LIBOBJS = queue.o route.o waypt.o filter_vecs.o util.o vecs.o mkshort.o \
csv_util.o strptime.o grtcirc.o vmem.o util_crc.o xmlgeneric.o \
- uuid.o formspec.o xmltag.o \
+ uuid.o formspec.o xmltag.o cet.o cet_util.o \
$(COLDSYNC) $(GARMIN) $(JEEPS) $(SHAPE) $(FMTS) $(FILTERS)
OBJS = main.o $(LIBOBJS)
jeeps/gpsnmea.h jeeps/gpsmem.h jeeps/gpsrqst.h jeeps/gpsinput.h \
jeeps/gpsproj.h jeeps/gpsnmeafmt.h jeeps/gpsnmeaget.h
cetus.o: cetus.c defs.h queue.h gbtypes.h coldsync/palm.h coldsync/pdb.h
-coastexp.o: coastexp.c defs.h queue.h gbtypes.h xmlgeneric.h uuid.h
+coastexp.o: coastexp.c defs.h queue.h gbtypes.h xmlgeneric.h uuid.h cet_util.h
copilot.o: copilot.c defs.h queue.h gbtypes.h coldsync/palm.h \
coldsync/pdb.h
coto.o: coto.c defs.h queue.h gbtypes.h csv_util.h coldsync/palm.h \
gpspilot.o: gpspilot.c defs.h queue.h gbtypes.h coldsync/palm.h \
coldsync/pdb.h
gpsutil.o: gpsutil.c defs.h queue.h gbtypes.h magellan.h
-gpx.o: gpx.c defs.h queue.h gbtypes.h xmlgeneric.h
+gpx.o: gpx.c defs.h queue.h gbtypes.h xmlgeneric.h cet_util.h
grtcirc.o: grtcirc.c defs.h queue.h gbtypes.h
hiketech.o: hiketech.c defs.h queue.h gbtypes.h xmlgeneric.h
holux.o: holux.c defs.h queue.h gbtypes.h holux.h
-hsa_ndv.o: hsa_ndv.c defs.h queue.h gbtypes.h
+hsa_ndv.o: hsa_ndv.c defs.h queue.h gbtypes.h cet_util.h
html.o: html.c defs.h queue.h gbtypes.h jeeps/gpsmath.h jeeps/gps.h \
jeeps/../defs.h jeeps/gpsport.h jeeps/gpsserial.h jeeps/gpssend.h \
jeeps/gpsread.h jeeps/gpsutil.h jeeps/gpsapp.h jeeps/gpsprot.h \
mapsend.o: mapsend.c defs.h queue.h gbtypes.h mapsend.h magellan.h
mapsource.o: mapsource.c defs.h queue.h gbtypes.h garmin_tables.h
mkshort.o: mkshort.c defs.h queue.h gbtypes.h
-navicache.o: navicache.c defs.h queue.h gbtypes.h
+navicache.o: navicache.c defs.h queue.h gbtypes.h cet_util.h
netstumbler.o: netstumbler.c defs.h queue.h gbtypes.h csv_util.h
nmea.o: nmea.c defs.h queue.h gbtypes.h
overlay.o: overlay.c defs.h queue.h gbtypes.h grtcirc.h
polygon.o: polygon.c defs.h queue.h gbtypes.h
position.o: position.c defs.h queue.h gbtypes.h grtcirc.h
psitrex.o: psitrex.c defs.h queue.h gbtypes.h garmin_tables.h
-psp.o: psp.c defs.h queue.h gbtypes.h
+psp.o: psp.c defs.h queue.h gbtypes.h cet_util.h
queue.o: queue.c queue.h
quovadis.o: quovadis.c quovadis.h defs.h queue.h gbtypes.h \
coldsync/palm.h coldsync/pdb.h
vmem.o: vmem.c defs.h queue.h gbtypes.h
waypt.o: waypt.c defs.h queue.h gbtypes.h
xcsv.o: xcsv.c defs.h queue.h gbtypes.h csv_util.h
-xmlgeneric.o: xmlgeneric.c defs.h queue.h gbtypes.h xmlgeneric.h
-xmltag.o: xmltag.c defs.h queue.h gbtypes.h
+xmlgeneric.o: xmlgeneric.c defs.h queue.h gbtypes.h cet_util.h xmlgeneric.h
+cet.o: cet.h cet.c defs.h
+cet_util.o: cet_util.h cet_util.c cet.h defs.h \
+ cet/ansi_x3_4_1968.h cet/atarist.h cet/baltic.h cet/bs_4730.h \
+ cet/bs_viewdata.h cet/cp1250.h cet/cp1251.h cet/cp1252.h \
+ cet/cp1253.h cet/cp1254.h cet/cp1255.h cet/cp1256.h \
+ cet/cp1257.h cet/csa_z243_4_1985_1.h cet/csa_z243_4_1985_2.h cet/csa_z243_4_1985_gr.h \
+ cet/csn_369103.h cet/cwi.h cet/dec_mcs.h cet/din_66003.h \
+ cet/ds_2089.h cet/ecma_cyrillic.h cet/es.h cet/es2.h \
+ cet/gb_1988_80.h cet/gost_19768_87.h cet/hp_roman8.h cet/ibm037.h \
+ cet/ibm1004.h cet/ibm1026.h cet/ibm1047.h cet/ibm256.h \
+ cet/ibm273.h cet/ibm277.h cet/ibm278.h cet/ibm280.h \
+ cet/ibm284.h cet/ibm285.h cet/ibm297.h cet/ibm437.h \
+ cet/ibm500.h cet/ibm850.h cet/ibm851.h cet/ibm852.h \
+ cet/ibm855.h cet/ibm857.h cet/ibm860.h cet/ibm861.h \
+ cet/ibm862.h cet/ibm863.h cet/ibm864.h cet/ibm865.h \
+ cet/ibm868.h cet/ibm869.h cet/ibm871.h cet/ibm891.h \
+ cet/ibm903.h cet/ibm904.h cet/iec_p27_1.h cet/iso_10367_box.h \
+ cet/iso_5427.h cet/iso_646_irv.h cet/iso_6937_2_25.h cet/iso_8859_1.h \
+ cet/iso_8859_10.h cet/iso_8859_13.h cet/iso_8859_14.h cet/iso_8859_15.h \
+ cet/iso_8859_2.h cet/iso_8859_3.h cet/iso_8859_4.h cet/iso_8859_5.h \
+ cet/iso_8859_6.h cet/iso_8859_7.h cet/iso_8859_8.h cet/iso_8859_9.h \
+ cet/iso_8859_supp.h cet/it.h cet/jis_c6220_1969_ro.h cet/jis_x0201.h \
+ cet/jus_i_b1_002.h cet/jus_i_b1_003_mac.h cet/jus_i_b1_003_serb.h cet/keybcs2.h \
+ cet/koi8_r.h cet/koi8_ru.h cet/koi8_u.h cet/koi_7.h \
+ cet/koi_8.h cet/koi_8_cs2.h cet/ksc5636.h cet/latin_greek_1.h \
+ cet/mac_is.h cet/macintosh.h cet/macintosh_ce.h cet/msz_7795_3.h \
+ cet/nats_dano.h cet/nats_sefi.h cet/nc_nc00_10.h cet/nextstep.h \
+ cet/nf_z_62_010.h cet/nf_z_62_010__1973_.h cet/ns_4551_1.h cet/ns_4551_2.h \
+ cet/pt.h cet/pt2.h cet/sami.h cet/sen_850200_b.h \
+ cet/sen_850200_c.h cet/tcvn.h cet/viscii.h cet/vps.h
coldsync/pdb.o: coldsync/pdb.c coldsync/config.h coldsync/palm.h \
coldsync/pdb.h
coldsync/util.o: coldsync/util.c coldsync/config.h coldsync/pconn/util.h \
gpsbabel -s -i geo -f geocaching.loc -o magellan -F /dev/ttyS0
gpsbabel -s -i geo -f geocaching.loc -o magellan -F com1
+
ADVANCED USAGE
Argument are processed in the order they appear on the command line
You can write the same data in different output formats:
gpsbabel -i geo -f 1.loc -o gpx -F 1.gpx -o pcx 1.wpt
+
+ If you want to change the character set of input or/and output
+ side you can do this with the option -c <character set>. You can get
+ a complete list of supported character sets with "gpsbabel -l".
+ To change the character set on both sides you should do this:
+
+ gpsbabel -i xcsv,style=foo.style -c latin1 -f foo
+ -o xcsv,style=bar.style -c ms-ansi -F bar
+
+ Note, that some formats has a fixed character set and ignore this option.
+
ROUTE AND TRACK MODES
my_read,
my_write,
NULL,
- an1_args
+ an1_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
-
+#include "cet_util.h"
#define MYNAME "bcr"
-#define BCR_DEBUG
-// #undef BCR_DEBUG
+#undef BCR_DEBUG
#define SEC_UNKNOWN 0
#define SEC_CLIENT 1
}
if (src != NULL) xfree(src);
- src = str_iso8859_1_to_utf8(buff);
+ src = xstrdup(buff);
/* !! buff is now free and can be used */
c = bcr_next_char(src); /* skip spaces */
}
else
{
+ char *tmp;
+
+ tmp = (value != NULL) ? xstrdup(value) : xstrdup("");
if (index != NULL)
- fprintf(fout, "%s%d=%s\x0d\n", key, *index, value);
+ fprintf(fout, "%s%d=%s\x0d\n", key, *index, tmp);
else
- fprintf(fout, "%s=%s\x0d\n", key, value);
+ fprintf(fout, "%s=%s\x0d\n", key, tmp);
+ xfree(tmp);
}
}
bcr_data_read,
bcr_data_write,
NULL,
- bcr_args
+ bcr_args,
+ CET_CHARSET_MS_ANSI, 0 /* CET-REVIEW */
};
-
data_read,
NULL,
NULL,
- brauniger_iq_args
+ brauniger_iq_args,
+ CET_CHARSET_UTF8, 1 /* master process: don't convert anything | CET-REVIEW */
};
--- /dev/null
+/*
+
+ Character encoding transformation - basics
+
+ Copyright (C) 2005 Olaf Klein, o.b.klein@t-online.de
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+*/
+
+#include "defs.h"
+#include "cet.h"
+
+#include <ctype.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+/* ! ALL vec PARAMETERS HAVE TO BE A VALID POINTER TO A cet_cs_vec_t RECORD ! */
+
+/* =========================================================================== */
+/* %%% single character or value transmission %%% */
+/* --------------------------------------------------------------------------- */
+
+/* %%% cet_char_to_ucs4 %%%
+ *
+ * single character to UCS-4 code %%%
+ * return values: 0 if convertable character, otherwise 1
+ */
+
+int
+cet_char_to_ucs4(const char src, const cet_cs_vec_t *vec, int *value)
+{
+ int trash, c;
+ int *dest;
+
+ c = ((unsigned char)src & 0xFF);
+ dest = (value != NULL) ? value : &trash;
+
+ *dest = c;
+ c -= vec->ucs4_offset;
+
+ if (c < 0) return CET_SUCESS;
+ else if ((c >= vec->ucs4_count) || (vec->ucs4_map[c] == -1)) return CET_ERROR;
+ else
+ {
+ *dest = vec->ucs4_map[c];
+ return CET_SUCESS;
+ }
+}
+
+/* %%% cet_ucs4_to_utf8 %%%
+ *
+ * convert single UCS-4 value into UTF-8 sequence
+ *
+ * return values: >= 0: length of produced UTF-8 sequence
+ * < 0: -bytes more needed in target space
+ */
+
+int
+cet_ucs4_to_utf8(char *dest, size_t dest_size, int value)
+{
+ int result;
+ char trash[16];
+ unsigned char *c;
+
+ c = (dest != NULL) ? dest : trash;
+
+ if ((value & 0xffffff80) == 0) /* <= 7 bits */
+ {
+ if (dest_size < 1) return (dest_size - 1);
+ *c++ = value;
+ result = 1;
+ }
+ else if ((value & 0xfffff800) == 0) /* <= 11 bits */
+ {
+ if (dest_size < 2) return (dest_size - 2);
+ *c++ = (0xc0 | (value >> 6));
+ *c++ = (0x80 | (value & 0x3f));
+ result = 2;
+
+ }
+ else if ((value & 0xffff0000) == 0) /* <= 16 bits */
+ {
+ if (dest_size < 3) return (dest_size - 3);
+ *c++ = (0xe0 | (value >> 12));
+ *c++ = (0x80 | ((value >> 6) & 0x3f));
+ *c++ = (0x80 | (value & 0x3f));
+ result = 3;
+ }
+ else if ((value & 0xffe00000) == 0) /* <= 21 bits */
+ {
+ if (dest_size < 4) return (dest_size - 4);
+ *c++ = (0xf0 | (value >> 18));
+ *c++ = (0x80 | ((value >> 12) & 0x3f));
+ *c++ = (0x80 | ((value >> 6) & 0x3f));
+ *c++ = (0x80 | (value & 0x3f));
+ result = 4;
+ }
+ else if ((value & 0xfc000000) == 0) /* <= 26 bits */
+ {
+ if (dest_size < 5) return (dest_size - 5);
+ *c++ = (0xf8 | (value >> 24));
+ *c++ = (0x80 | ((value >> 18) & 0x3f));
+ *c++ = (0x80 | ((value >> 12) & 0x3f));
+ *c++ = (0x80 | ((value >> 6) & 0x3f));
+ *c++ = (0x80 | (value & 0x3f));
+ result = 5;
+ }
+ else if ((value & 0x80000000) == 0) /* <= 31 bits */
+ {
+ if (dest_size < 6) return (dest_size - 6);
+ *c++ = (0xfc | (value >> 30));
+ *c++ = (0x80 | ((value >> 24) & 0x3f));
+ *c++ = (0x80 | ((value >> 18) & 0x3f));
+ *c++ = (0x80 | ((value >> 12) & 0x3f));
+ *c++ = (0x80 | ((value >> 6) & 0x3f));
+ *c++ = (0x80 | (value & 0x3f));
+ result = 6;
+ }
+ else
+ {
+ return 0; /* Value = -1 */
+ }
+ return result;
+}
+
+/* %%% cet_utf8_to_ucs4 %%%
+ *
+ * decode single UTF-8 sequence into UCS-4 value
+ *
+ * return values: 0 if success, otherwise 1
+ */
+int
+cet_utf8_to_ucs4(const char *str, int *bytes, int *value)
+{
+ unsigned char *cp = (unsigned char *)str;
+
+ if (*cp < 0x80)
+ {
+ if (bytes != NULL) *bytes = 1;
+ if (value != NULL) *value = *cp;
+ return CET_SUCESS;
+ }
+ else
+ {
+ unsigned char bits = 0xc0;
+ unsigned char mask = 0xe0;
+ int len = 0;
+
+ for (len = 1; len <= 6; len++) /* outer loop, test UTF-8 frame */
+ {
+ if ((*cp & mask) == bits)
+ {
+ int i = len;
+ while (i-- > 0)
+ {
+ cp++;
+ if ((*cp & 0xc0) != 0x80) break; /* invalid */
+ else if (i == 0) /* all valid */
+ {
+ char *c = (char *)str; /* found valid sequence, now storing value */
+ int res = *c++ & (mask ^ 0xFF);
+ i = len;
+ while (i-- > 0)
+ res = (res << 6) | (*c++ & 0x3f);
+
+ if (bytes != NULL) *bytes = len + 1;
+ if (value != NULL) *value = res;
+ return CET_SUCESS;
+ }
+ }
+ }
+ bits = (bits >> 1) | 0x80;
+ mask = (mask >> 1) | 0x80;
+ }
+ }
+ if (bytes != NULL) *bytes = 1;
+ if (value != NULL) *value = *cp;
+ return CET_ERROR; /* not valid */
+}
+
+/* %%% cet_ucs4_to_char %%%
+ *
+ * convert single UCS-4 value to original character from CS
+ *
+ * return values: coverted character or "CET_NOT_CONVERTABLE_DEFAULT"
+ * if not possible
+ */
+short
+cet_ucs4_to_char(const int value, const cet_cs_vec_t *vec)
+{
+ cet_ucs4_link_t *link;
+
+ if ((link = (cet_ucs4_link_t *)vec->ucs4_link))
+ {
+ int i = 0;
+ int j = vec->ucs4_links - 1; /* validate ucs value against vec */
+ while (i <= j)
+ {
+ int a = (i + j) >> 1;
+ int x = link[a].value;
+
+ if (x < value) i = a + 1;
+ else if (x > value) j = a - 1;
+ else return link[a].origin;
+ }
+ }
+
+ if ((link = (cet_ucs4_link_t *)vec->ucs4_extra)) /* can be NULL */
+ {
+ int i = 0;
+ int j = vec->ucs4_extras - 1;
+ while (i <= j)
+ {
+ int a = (i + j) >> 1;
+ int x = link[a].value;
+
+ if (x < value) i = a + 1;
+ else if (x > value) j = a - 1;
+ else return link[a].origin;
+ }
+ }
+
+ if (value < vec->ucs4_offset + vec->ucs4_count)
+ return (char)value & 0xFF;
+ else
+ return CET_NOT_CONVERTABLE_DEFAULT;
+}
+
+/* %%% cet_utf8_to_char %%%
+ *
+ * Convert single UTF-8 sequence directly into associated characted
+ * by given character set.
+ */
+
+short
+cet_utf8_to_char(const char *str, const cet_cs_vec_t *vec, /* out */ int *bytes, int *value)
+{
+ int b, v;
+
+ cet_utf8_to_ucs4(str, &b, &v); /* decode UTF-8 sequence */
+
+ if (bytes != NULL) *bytes = b;
+ if (value != NULL) *value = v;
+
+ return cet_ucs4_to_char(v, vec);
+}
+
+/* =========================================================================== */
+/* %%% full string transformation %%% */
+/* =========================================================================== */
+
+/* %%% cet_str_utf8_to_any %%%
+ *
+ * Converts a UTF-8 string to given character set
+ */
+char *
+cet_str_utf8_to_any(const char *src, const cet_cs_vec_t *vec)
+{
+ char *c = (char *)src;
+ int len;
+ char *res, *dest, *cend;
+
+ if (c == NULL) return NULL;
+
+ len = strlen(c);
+ res = dest = xmalloc(len + 1); /* target will become smaller or equal length */
+
+ cend = c + len;
+
+ while (c < cend)
+ {
+ int bytes;
+ *dest++ = cet_utf8_to_char(c, vec, &bytes, NULL);
+ c += bytes;
+ }
+ *dest = '\0';
+
+ return res;
+}
+
+
+/* %%% cet_str_any_to_utf8 %%%
+ *
+ * Converts a string from given character set to UTF-8
+ */
+char *
+cet_str_any_to_utf8(const char *src, const cet_cs_vec_t *vec)
+{
+ int len, value;
+ char *result, *cin, *cout;
+ char temp = CET_NOT_CONVERTABLE_DEFAULT;
+
+ cin = (char *)src;
+ if (cin == NULL) return NULL;
+
+ len = 0;
+ while (*cin != '\0') /* determine length of resulting UTF-8 string */
+ {
+ if (CET_ERROR == cet_char_to_ucs4(*cin++, vec, &value))
+ cet_char_to_ucs4(temp, vec, &value);
+ len += cet_ucs4_to_utf8(NULL, 6, value);
+ }
+
+ result = cout = xmalloc(len + 1);
+ cin = (char *)src;
+
+ while (*cin != '\0')
+ {
+ if (CET_ERROR == cet_char_to_ucs4(*cin++, vec, &value))
+ cet_char_to_ucs4(temp, vec, &value);
+ cout += cet_ucs4_to_utf8(cout, 6, value);
+ }
+ *cout = '\0';
+ return result;
+}
+
+/* %%% cet_str_uni_to_utf8 %%%
+ *
+ * Converts an unicode string to UTF-8
+ */
+char *
+cet_str_uni_to_utf8(const short *src, const int length)
+{
+ int i, len;
+ unsigned short *cin;
+ char *res, *cout;
+
+ if (src == NULL) return NULL;
+
+ len = 0;
+ i = length;
+ cin = (unsigned short *)src;
+
+ while (i-- > 0)
+ len += cet_ucs4_to_utf8(NULL, 6, *cin++);
+
+ res = cout = xmalloc(len + 1);
+ cin = (unsigned short *)src;
+ i = length;
+
+ while (i-- > 0)
+ cout += cet_ucs4_to_utf8(cout, 6, *cin++);
+
+ *cout = '\0';
+
+ return res;
+}
--- /dev/null
+/*
+
+ Character encoding transformation - basics header
+
+ Copyright (C) 2005 Olaf Klein, o.b.klein@t-online.de
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+*/
+
+#ifndef CET_H
+#define CET_H
+
+#include <ctype.h>
+#include <stdio.h>
+
+#define CET_ERROR 1
+#define CET_SUCESS 0
+
+typedef struct cet_ucs4_link_s
+{
+ int value; /* UCS-4 value */
+ short origin; /* associeted character */
+} cet_ucs4_link_t;
+
+typedef struct cet_cs_vec_s
+{
+ const char *name; /* name of character set */
+ const char **alias; /* alias table */
+ int (*decode)(const char *, int *); /* ... to UCS-4 decoder !FUTURE! */
+ short (*encode)(const int); /* UCS-4 to ... encoder !FUTURE! */
+ const int *ucs4_map; /* char to UCS-4 value table */
+ const int ucs4_offset; /* first non standard character */
+ const int ucs4_count; /* values in table */
+ const cet_ucs4_link_t *ucs4_link; /* UCS-4 to char backward links */
+ const int ucs4_links; /* number of links */
+ const cet_ucs4_link_t *ucs4_extra; /* Non standard UCS-4 to ... */
+ const int ucs4_extras; /* number of extra links */
+ struct cet_cs_vec_s *next;
+} cet_cs_vec_t;
+
+/* single char/value transmission */
+
+int cet_utf8_to_ucs4(const char *str, int *bytes, int *value);
+int cet_ucs4_to_utf8(char *dest, size_t dest_size, int value);
+
+/* single char/value transmission - vec based */
+
+int cet_char_to_ucs4(const char src, const cet_cs_vec_t *vec, int *value);
+short cet_utf8_to_char(const char *str, const cet_cs_vec_t *vecint, int *bytes, int *value);
+short cet_ucs4_to_char(const int value, const cet_cs_vec_t *vec);
+
+/* string to string - vector based */
+
+char *cet_str_utf8_to_any(const char *src, const cet_cs_vec_t *vec);
+char *cet_str_any_to_utf8(const char *src, const cet_cs_vec_t *vec);
+
+char *cet_str_uni_to_utf8(const short *src, const int length);
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ANSI_X3.4-1968" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ansi_x3_4_1968_h
+#define ansi_x3_4_1968_h
+
+#define cet_cs_name_ansi_x3_4_1968 "US-ASCII"
+
+const char *cet_cs_alias_ansi_x3_4_1968[] =
+{
+ "ANSI_X3.4-1968", "367/CR-LF", "ANSI_X3.4-1986", "ASCII",
+ "CP367/CR-LF", "csASCII", "IBM367/CR-LF", "ISO646-US",
+ "ISO646.1991-IRV", "iso-ir-6", "ISO_646.irv:1991", "us",
+ "US-ASCII", NULL
+};
+
+#define cet_ucs4_ofs_ansi_x3_4_1968 128
+#define cet_ucs4_cnt_ansi_x3_4_1968 0
+
+const int cet_ucs4_map_ansi_x3_4_1968[cet_ucs4_cnt_ansi_x3_4_1968] =
+{
+};
+
+#define cet_ucs4_to_ansi_x3_4_1968_ct 0
+
+const cet_ucs4_link_t cet_ucs4_to_ansi_x3_4_1968_links[cet_ucs4_to_ansi_x3_4_1968_ct] =
+{
+};
+
+#define cet_ucs4_to_ansi_x3_4_1968_extra_ct 25
+
+const cet_ucs4_link_t cet_ucs4_to_ansi_x3_4_1968_extra[cet_ucs4_to_ansi_x3_4_1968_extra_ct] =
+/* ------------------------------------------*/
+/* !!! sorted by UCS-4 value !!! */
+/* ------------------------------------------*/
+{
+ {0x00c0, (unsigned char) 'A'},
+ {0x00c1, (unsigned char) 'A'},
+ {0x00c2, (unsigned char) 'A'},
+ {0x00c3, (unsigned char) 'A'},
+ {0x00c4, (unsigned char) 'A'},
+ {0x00c5, (unsigned char) 'A'},
+ {0x00e0, (unsigned char) 'a'},
+ {0x00e1, (unsigned char) 'a'},
+ {0x00e2, (unsigned char) 'a'},
+ {0x00e3, (unsigned char) 'a'},
+ {0x00e4, (unsigned char) 'a'},
+ {0x00e5, (unsigned char) 'a'},
+ {0x00e8, (unsigned char) 'e'},
+ {0x00e9, (unsigned char) 'e'},
+ {0x00ea, (unsigned char) 'e'},
+ {0x00eb, (unsigned char) 'e'},
+ {0x00f2, (unsigned char) 'o'},
+ {0x00f3, (unsigned char) 'o'},
+ {0x00f4, (unsigned char) 'o'},
+ {0x00f5, (unsigned char) 'o'},
+ {0x00f6, (unsigned char) 'o'},
+ {0x00fc, (unsigned char) 'u'},
+ {0x1e94, (unsigned char) 'u'},
+ {0x201c, (unsigned char) '"'},
+ {0x201d, (unsigned char) '"'}
+};
+
+cet_cs_vec_t cet_cs_vec_ansi_x3_4_1968 = /* defined in cet.h */
+{
+ cet_cs_name_ansi_x3_4_1968, /* name of character set */
+ cet_cs_alias_ansi_x3_4_1968, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ansi_x3_4_1968, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ansi_x3_4_1968, /* first non standard character */
+ cet_ucs4_cnt_ansi_x3_4_1968, /* number of values in table */
+
+ cet_ucs4_to_ansi_x3_4_1968_links, /* UCS-4 to char links */
+ cet_ucs4_to_ansi_x3_4_1968_ct, /* number of links */
+
+ cet_ucs4_to_ansi_x3_4_1968_extra, /* hand made UCS-4 links */
+ cet_ucs4_to_ansi_x3_4_1968_extra_ct, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ansi_x3_4_1968_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "AtariST" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef atarist_h
+#define atarist_h
+
+#define cet_cs_name_atarist "AtariST"
+
+const char *cet_cs_alias_atarist[] =
+{
+ "AtariST", NULL
+};
+
+#define cet_ucs4_ofs_atarist 128
+#define cet_ucs4_cnt_atarist 128
+
+const int cet_ucs4_map_atarist[cet_ucs4_cnt_atarist] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x00ff, 0x00d6, 0x00dc, 0x00a2, 0x00a3, 0x00a5, 0x00df, 0x0192,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x00e3, 0x00f5, 0x00d8, 0x00f8, 0x0153, 0x0152, 0x00c0, 0x00c3,
+ 0x00d5, 0x00a8, 0x00b4, 0x2020, 0x00b6, 0x00a9, 0x00ae, 0x2122,
+ 0x0133, 0x0132, 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5,
+ 0x05d6, 0x05d7, 0x05d8, 0x05d9, 0x05db, 0x05dc, 0x05de, 0x05e0,
+ 0x05e1, 0x05e2, 0x05e4, 0x05e6, 0x05e7, 0x05e8, 0x05e9, 0x05ea,
+ 0x05df, 0x05da, 0x05dd, 0x05e3, 0x05e5, 0x00a7, 0x2038, 0x221e,
+ 0x03b1, 0x03b2, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x03b8, 0x2126, 0x03b4, 0x222e, 0x03c6, 0x2208, 0x220f,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x2022, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x00b3, 0x00af
+};
+
+#define cet_ucs4_to_atarist_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_atarist_links[cet_ucs4_to_atarist_ct] =
+{
+ {0x00a1, 0xad} /* exclamation mark */,
+ {0x00a2, 0x9b} /* sign */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00a5, 0x9d} /* sign */,
+ {0x00a7, 0xdd} /* sign */,
+ {0x00a8, 0xb9} /* diaeresis */,
+ {0x00a9, 0xbd} /* sign */,
+ {0x00aa, 0xa6} /* ordinal indicator */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00ae, 0xbe} /* sign */,
+ {0x00af, 0xff} /* macron */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b3, 0xfe} /* three */,
+ {0x00b4, 0xba} /* accent */,
+ {0x00b5, 0xe6} /* sign */,
+ {0x00b6, 0xbc} /* sign */,
+ {0x00b7, 0xfa} /* dot */,
+ {0x00ba, 0xa7} /* ordinal indicator */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00bf, 0xa8} /* question mark */,
+ {0x00c0, 0xb6} /* capital letter a with grave */,
+ {0x00c3, 0xb7} /* capital letter a with tilde */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c5, 0x8f} /* capital letter a with ring above */,
+ {0x00c6, 0x92} /* capital letter ae */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00d1, 0xa5} /* capital letter n with tilde */,
+ {0x00d5, 0xb8} /* capital letter o with tilde */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00d8, 0xb2} /* capital letter o with stroke */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00df, 0x9e} /* small letter sharp s (german) */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e3, 0xb0} /* small letter a with tilde */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e5, 0x86} /* small letter a with ring above */,
+ {0x00e6, 0x91} /* small letter ae */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ec, 0x8d} /* small letter i with grave */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00ee, 0x8c} /* small letter i with circumflex */,
+ {0x00ef, 0x8b} /* small letter i with diaeresis */,
+ {0x00f1, 0xa4} /* small letter n with tilde */,
+ {0x00f2, 0x95} /* small letter o with grave */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f5, 0xb1} /* small letter o with tilde */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00f8, 0xb3} /* small letter o with stroke */,
+ {0x00f9, 0x97} /* small letter u with grave */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fb, 0x96} /* small letter u with circumflex */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x00ff, 0x98} /* small letter y with diaeresis */,
+ {0x0132, 0xc1} /* capital ligature ij */,
+ {0x0133, 0xc0} /* small ligature ij */,
+ {0x0152, 0xb5} /* capital ligature oe */,
+ {0x0153, 0xb4} /* small ligature oe */,
+ {0x0192, 0x9f} /* minuscule latine f hameçon */,
+ {0x0393, 0xe2} /* capital letter gamma */,
+ {0x03a3, 0xe4} /* capital letter sigma */,
+ {0x03a6, 0xe8} /* capital letter phi */,
+ {0x03b1, 0xe0} /* small letter alpha */,
+ {0x03b2, 0xe1} /* small letter beta */,
+ {0x03b4, 0xeb} /* small letter delta */,
+ {0x03b8, 0xe9} /* small letter theta */,
+ {0x03c0, 0xe3} /* small letter pi */,
+ {0x03c3, 0xe5} /* small letter sigma */,
+ {0x03c4, 0xe7} /* small letter tau */,
+ {0x03c6, 0xed} /* small letter phi */,
+ {0x05d0, 0xc2} /* letter alef */,
+ {0x05d1, 0xc3} /* letter bet */,
+ {0x05d2, 0xc4} /* letter gimel */,
+ {0x05d3, 0xc5} /* letter dalet */,
+ {0x05d4, 0xc6} /* letter he */,
+ {0x05d5, 0xc7} /* letter vav */,
+ {0x05d6, 0xc8} /* letter zayin */,
+ {0x05d7, 0xc9} /* letter het */,
+ {0x05d8, 0xca} /* letter tet */,
+ {0x05d9, 0xcb} /* letter yod */,
+ {0x05da, 0xd9} /* letter final kaf */,
+ {0x05db, 0xcc} /* letter kaf */,
+ {0x05dc, 0xcd} /* letter lamed */,
+ {0x05dd, 0xda} /* letter final mem */,
+ {0x05de, 0xce} /* letter mem */,
+ {0x05df, 0xd8} /* letter final nun */,
+ {0x05e0, 0xcf} /* letter nun */,
+ {0x05e1, 0xd0} /* letter samekh */,
+ {0x05e2, 0xd1} /* letter ayin */,
+ {0x05e3, 0xdb} /* letter final pe */,
+ {0x05e4, 0xd2} /* letter pe */,
+ {0x05e5, 0xdc} /* letter final tsadi */,
+ {0x05e6, 0xd3} /* letter tsadi */,
+ {0x05e7, 0xd4} /* letter qof */,
+ {0x05e8, 0xd5} /* letter resh */,
+ {0x05e9, 0xd6} /* letter shin */,
+ {0x05ea, 0xd7} /* letter tav */,
+ {0x2020, 0xbb} /* dagger */,
+ {0x2022, 0xf9} /* puce */,
+ {0x2038, 0xde} /* caret */,
+ {0x207f, 0xfc} /* latin small letter n */,
+ {0x2122, 0xbf} /* mark sign */,
+ {0x2126, 0xea} /* sign */,
+ {0x2208, 0xee} /* of */,
+ {0x220f, 0xef} /* product */,
+ {0x221a, 0xfb} /* root */,
+ {0x221e, 0xdf} /* infinity */,
+ {0x222e, 0xec} /* integral */,
+ {0x2248, 0xf7} /* equal to */,
+ {0x2261, 0xf0} /* to */,
+ {0x2264, 0xf3} /* or equal to */,
+ {0x2265, 0xf2} /* or equal to */,
+ {0x2310, 0xa9} /* not sign */,
+ {0x2320, 0xf4} /* half integral */,
+ {0x2321, 0xf5} /* half integral */
+};
+
+/*
+#define cet_ucs4_to_atarist_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_atarist_extra[cet_ucs4_to_atarist_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_atarist = /* defined in cet.h */
+{
+ cet_cs_name_atarist, /* name of character set */
+ cet_cs_alias_atarist, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_atarist, /* char to UCS-4 value table */
+ cet_ucs4_ofs_atarist, /* first non standard character */
+ cet_ucs4_cnt_atarist, /* number of values in table */
+
+ cet_ucs4_to_atarist_links, /* UCS-4 to char links */
+ cet_ucs4_to_atarist_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int atarist_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x00ff, 0x00d6, 0x00dc, 0x00a2, 0x00a3, 0x00a5, 0x00df, 0x0192,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x00e3, 0x00f5, 0x00d8, 0x00f8, 0x0153, 0x0152, 0x00c0, 0x00c3,
+ 0x00d5, 0x00a8, 0x00b4, 0x2020, 0x00b6, 0x00a9, 0x00ae, 0x2122,
+ 0x0133, 0x0132, 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5,
+ 0x05d6, 0x05d7, 0x05d8, 0x05d9, 0x05db, 0x05dc, 0x05de, 0x05e0,
+ 0x05e1, 0x05e2, 0x05e4, 0x05e6, 0x05e7, 0x05e8, 0x05e9, 0x05ea,
+ 0x05df, 0x05da, 0x05dd, 0x05e3, 0x05e5, 0x00a7, 0x2038, 0x221e,
+ 0x03b1, 0x03b2, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x03b8, 0x2126, 0x03b4, 0x222e, 0x03c6, 0x2208, 0x220f,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x2022, 0x00b7, 0x221a, 0x207f, 0x00b2, 0x00b3, 0x00af
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "baltic" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef baltic_h
+#define baltic_h
+
+#define cet_cs_name_baltic "baltic"
+
+const char *cet_cs_alias_baltic[] =
+{
+ "baltic", "iso-ir-179", NULL
+};
+
+#define cet_ucs4_ofs_baltic 161
+#define cet_ucs4_cnt_baltic 95
+
+const int cet_ucs4_map_baltic[cet_ucs4_cnt_baltic] =
+{
+ 0x201d, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7, 0x00d8,
+ 0x00a9, 0x201e, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00c6, 0x00b0,
+ 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7, 0x00f8,
+ 0x00b9, 0x201c, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00e6, 0x012e,
+ 0x0116, 0x0100, 0x0106, 0x00c4, 0x00c5, 0x0104, 0x010c, 0x0122,
+ 0x00c9, 0x017d, 0x0118, 0x0112, 0x0136, 0x012a, 0x013b, 0x0141,
+ 0x0145, 0x0143, 0x00d3, 0x014c, 0x00d5, 0x00d6, 0x00d7, 0x0172,
+ 0x0160, 0x015a, 0x016a, 0x00dc, 0x017b, 0x0179, 0x00df, 0x012f,
+ 0x0117, 0x0101, 0x0107, 0x00e4, 0x00e5, 0x0105, 0x010d, 0x0123,
+ 0x00e9, 0x017e, 0x0119, 0x0113, 0x0137, 0x012b, 0x013c, 0x0142,
+ 0x0146, 0x0144, 0x00f3, 0x014d, 0x00f5, 0x00f6, 0x00f7, 0x0173,
+ 0x0161, 0x015b, 0x016b, 0x00fc, 0x017c, 0x017a, 0x0138
+};
+
+#define cet_ucs4_to_baltic_ct 54
+
+const cet_ucs4_link_t cet_ucs4_to_baltic_links[cet_ucs4_to_baltic_ct] =
+{
+ {0x00c6, 0xaf} /* capital letter ae */,
+ {0x00d8, 0xa8} /* capital letter o with stroke */,
+ {0x00e6, 0xbf} /* small letter ae */,
+ {0x00f8, 0xb8} /* small letter o with stroke */,
+ {0x0100, 0xc2} /* capital letter a with macron */,
+ {0x0101, 0xe2} /* small letter a with macron */,
+ {0x0104, 0xc6} /* capital letter a with ogonek */,
+ {0x0105, 0xe6} /* small letter a with ogonek */,
+ {0x0106, 0xc3} /* capital letter c with acute */,
+ {0x0107, 0xe3} /* small letter c with acute */,
+ {0x010c, 0xc7} /* capital letter c with caron */,
+ {0x010d, 0xe7} /* small letter c with caron */,
+ {0x0112, 0xcc} /* capital letter e with macron */,
+ {0x0113, 0xec} /* small letter e with macron */,
+ {0x0116, 0xc1} /* capital letter e with dot above */,
+ {0x0117, 0xe1} /* small letter e with dot above */,
+ {0x0118, 0xcb} /* capital letter e with ogonek */,
+ {0x0119, 0xeb} /* small letter e with ogonek */,
+ {0x0122, 0xc8} /* capital letter g with cedilla */,
+ {0x0123, 0xe8} /* small letter g with cedilla */,
+ {0x012a, 0xce} /* capital letter i with macron */,
+ {0x012b, 0xee} /* small letter i with macron */,
+ {0x012e, 0xc0} /* capital letter i with ogonek */,
+ {0x012f, 0xe0} /* small letter i with ogonek */,
+ {0x0136, 0xcd} /* capital letter k with cedilla */,
+ {0x0137, 0xed} /* small letter k with cedilla */,
+ {0x0138, 0xff} /* small letter kra (greenlandic) */,
+ {0x013b, 0xcf} /* capital letter l with cedilla */,
+ {0x013c, 0xef} /* small letter l with cedilla */,
+ {0x0141, 0xd0} /* capital letter l with stroke */,
+ {0x0142, 0xf0} /* small letter l with stroke */,
+ {0x0143, 0xd2} /* capital letter n with acute */,
+ {0x0144, 0xf2} /* small letter n with acute */,
+ {0x0145, 0xd1} /* capital letter n with cedilla */,
+ {0x0146, 0xf1} /* small letter n with cedilla */,
+ {0x014c, 0xd4} /* capital letter o with macron */,
+ {0x014d, 0xf4} /* small letter o with macron */,
+ {0x015a, 0xda} /* capital letter s with acute */,
+ {0x015b, 0xfa} /* small letter s with acute */,
+ {0x0160, 0xd9} /* capital letter s with caron */,
+ {0x0161, 0xf9} /* small letter s with caron */,
+ {0x016a, 0xdb} /* capital letter u with macron */,
+ {0x016b, 0xfb} /* small letter u with macron */,
+ {0x0172, 0xd8} /* capital letter u with ogonek */,
+ {0x0173, 0xf8} /* small letter u with ogonek */,
+ {0x0179, 0xde} /* capital letter z with acute */,
+ {0x017a, 0xfe} /* small letter z with acute */,
+ {0x017b, 0xdd} /* capital letter z with dot above */,
+ {0x017c, 0xfd} /* small letter z with dot above */,
+ {0x017d, 0xca} /* capital letter z with caron */,
+ {0x017e, 0xea} /* small letter z with caron */,
+ {0x201c, 0xba} /* double quotation mark */,
+ {0x201d, 0xa1} /* double quotation mark */,
+ {0x201e, 0xaa} /* low-9 quotation mark */
+};
+
+/*
+#define cet_ucs4_to_baltic_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_baltic_extra[cet_ucs4_to_baltic_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_baltic = /* defined in cet.h */
+{
+ cet_cs_name_baltic, /* name of character set */
+ cet_cs_alias_baltic, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_baltic, /* char to UCS-4 value table */
+ cet_ucs4_ofs_baltic, /* first non standard character */
+ cet_ucs4_cnt_baltic, /* number of values in table */
+
+ cet_ucs4_to_baltic_links, /* UCS-4 to char links */
+ cet_ucs4_to_baltic_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int baltic_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x201d, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00d8, 0x00a9, 0x201e, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00c6,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00f8, 0x00b9, 0x201c, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00e6,
+ 0x012e, 0x0116, 0x0100, 0x0106, 0x00c4, 0x00c5, 0x0104, 0x010c,
+ 0x0122, 0x00c9, 0x017d, 0x0118, 0x0112, 0x0136, 0x012a, 0x013b,
+ 0x0141, 0x0145, 0x0143, 0x00d3, 0x014c, 0x00d5, 0x00d6, 0x00d7,
+ 0x0172, 0x0160, 0x015a, 0x016a, 0x00dc, 0x017b, 0x0179, 0x00df,
+ 0x012f, 0x0117, 0x0101, 0x0107, 0x00e4, 0x00e5, 0x0105, 0x010d,
+ 0x0123, 0x00e9, 0x017e, 0x0119, 0x0113, 0x0137, 0x012b, 0x013c,
+ 0x0142, 0x0146, 0x0144, 0x00f3, 0x014d, 0x00f5, 0x00f6, 0x00f7,
+ 0x0173, 0x0161, 0x015b, 0x016b, 0x00fc, 0x017c, 0x017a, 0x0138
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "BS_4730" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef bs_4730_h
+#define bs_4730_h
+
+#define cet_cs_name_bs_4730 "BS_4730"
+
+const char *cet_cs_alias_bs_4730[] =
+{
+ "BS_4730", "gb", "ISO646-GB", "iso-ir-4",
+ "uk", NULL
+};
+
+#define cet_ucs4_ofs_bs_4730 35
+#define cet_ucs4_cnt_bs_4730 93
+
+const int cet_ucs4_map_bs_4730[cet_ucs4_cnt_bs_4730] =
+{
+ 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a,
+ 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032,
+ 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a,
+ 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042,
+ 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+ 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+ 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+ 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x007b, 0x007c, 0x007d, 0x203e, 0x007f
+};
+
+#define cet_ucs4_to_bs_4730_ct 2
+
+const cet_ucs4_link_t cet_ucs4_to_bs_4730_links[cet_ucs4_to_bs_4730_ct] =
+{
+ {0x00a3, 0x23} /* sign */,
+ {0x203e, 0x7e} /* overline */
+};
+
+/*
+#define cet_ucs4_to_bs_4730_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_bs_4730_extra[cet_ucs4_to_bs_4730_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_bs_4730 = /* defined in cet.h */
+{
+ cet_cs_name_bs_4730, /* name of character set */
+ cet_cs_alias_bs_4730, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_bs_4730, /* char to UCS-4 value table */
+ cet_ucs4_ofs_bs_4730, /* first non standard character */
+ cet_ucs4_cnt_bs_4730, /* number of values in table */
+
+ cet_ucs4_to_bs_4730_links, /* UCS-4 to char links */
+ cet_ucs4_to_bs_4730_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int bs_4730_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x203e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "BS_viewdata" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef bs_viewdata_h
+#define bs_viewdata_h
+
+#define cet_cs_name_bs_viewdata "BS_viewdata"
+
+const char *cet_cs_alias_bs_viewdata[] =
+{
+ "BS_viewdata", "iso-ir-47", NULL
+};
+
+#define cet_ucs4_ofs_bs_viewdata 35
+#define cet_ucs4_cnt_bs_viewdata 93
+
+const int cet_ucs4_map_bs_viewdata[cet_ucs4_cnt_bs_viewdata] =
+{
+ 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a,
+ 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032,
+ 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a,
+ 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042,
+ 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+ 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+ 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+ 0x2190, 0x00bd, 0x2192, 0x2191, 0x25a1, 0x0060, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x00bc, 0x2225, 0x00be, 0x00f7, 0x007f
+};
+
+#define cet_ucs4_to_bs_viewdata_ct 10
+
+const cet_ucs4_link_t cet_ucs4_to_bs_viewdata_links[cet_ucs4_to_bs_viewdata_ct] =
+{
+ {0x00a3, 0x23} /* sign */,
+ {0x00bc, 0x7b} /* fraction one quarter */,
+ {0x00bd, 0x5c} /* fraction one half */,
+ {0x00be, 0x7d} /* fraction three quarters */,
+ {0x00f7, 0x7e} /* sign */,
+ {0x2190, 0x5b} /* arrow */,
+ {0x2191, 0x5e} /* arrow */,
+ {0x2192, 0x5d} /* arrow */,
+ {0x2225, 0x7c} /* to */,
+ {0x25a1, 0x5f} /* square */
+};
+
+/*
+#define cet_ucs4_to_bs_viewdata_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_bs_viewdata_extra[cet_ucs4_to_bs_viewdata_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_bs_viewdata = /* defined in cet.h */
+{
+ cet_cs_name_bs_viewdata, /* name of character set */
+ cet_cs_alias_bs_viewdata, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_bs_viewdata, /* char to UCS-4 value table */
+ cet_ucs4_ofs_bs_viewdata, /* first non standard character */
+ cet_ucs4_cnt_bs_viewdata, /* number of values in table */
+
+ cet_ucs4_to_bs_viewdata_links, /* UCS-4 to char links */
+ cet_ucs4_to_bs_viewdata_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int bs_viewdata_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x2190, 0x00bd, 0x2192, 0x2191, 0x25a1,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00bc, 0x2225, 0x00be, 0x00f7, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CP1250" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef cp1250_h
+#define cp1250_h
+
+#define cet_cs_name_cp1250 "CP1250"
+
+const char *cet_cs_alias_cp1250[] =
+{
+ "CP1250/CR-LF", "1250/CR-LF", "ms-ee", "windows-1250", "WIN-CP1250",
+ NULL
+};
+
+#define cet_ucs4_ofs_cp1250 128
+#define cet_ucs4_cnt_cp1250 128
+
+const int cet_ucs4_map_cp1250[cet_ucs4_cnt_cp1250] =
+{
+ 0x20ac, -1, 0x201a, -1, 0x201e, 0x2026, 0x2020, 0x2021,
+ -1, 0x2030, 0x0160, 0x2039, 0x015a, 0x0164, 0x017d, 0x0179,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, 0x0161, 0x203a, 0x015b, 0x0165, 0x017e, 0x017a,
+ 0x00a0, 0x02c7, 0x02d8, 0x0141, 0x00a4, 0x0104, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x015e, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x017b,
+ 0x00b0, 0x00b1, 0x02db, 0x0142, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x0105, 0x015f, 0x00bb, 0x013d, 0x02dd, 0x013e, 0x017c,
+ 0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7,
+ 0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e,
+ 0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7,
+ 0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df,
+ 0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7,
+ 0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f,
+ 0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7,
+ 0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9
+};
+
+#define cet_ucs4_to_cp1250_ct 74
+
+const cet_ucs4_link_t cet_ucs4_to_cp1250_links[cet_ucs4_to_cp1250_ct] =
+{
+ {0x0102, 0xc3} /* capital letter a with breve */,
+ {0x0103, 0xe3} /* small letter a with breve */,
+ {0x0104, 0xa5} /* capital letter a with ogonek */,
+ {0x0105, 0xb9} /* small letter a with ogonek */,
+ {0x0106, 0xc6} /* capital letter c with acute */,
+ {0x0107, 0xe6} /* small letter c with acute */,
+ {0x010c, 0xc8} /* capital letter c with caron */,
+ {0x010d, 0xe8} /* small letter c with caron */,
+ {0x010e, 0xcf} /* capital letter d with caron */,
+ {0x010f, 0xef} /* small letter d with caron */,
+ {0x0110, 0xd0} /* capital letter d with stroke */,
+ {0x0111, 0xf0} /* small letter d with stroke */,
+ {0x0118, 0xca} /* capital letter e with ogonek */,
+ {0x0119, 0xea} /* small letter e with ogonek */,
+ {0x011a, 0xcc} /* capital letter e with caron */,
+ {0x011b, 0xec} /* small letter e with caron */,
+ {0x0139, 0xc5} /* capital letter l with acute */,
+ {0x013a, 0xe5} /* small letter l with acute */,
+ {0x013d, 0xbc} /* capital letter l with caron */,
+ {0x013e, 0xbe} /* small letter l with caron */,
+ {0x0141, 0xa3} /* capital letter l with stroke */,
+ {0x0142, 0xb3} /* small letter l with stroke */,
+ {0x0143, 0xd1} /* capital letter n with acute */,
+ {0x0144, 0xf1} /* small letter n with acute */,
+ {0x0147, 0xd2} /* capital letter n with caron */,
+ {0x0148, 0xf2} /* small letter n with caron */,
+ {0x0150, 0xd5} /* capital letter o with double acute */,
+ {0x0151, 0xf5} /* small letter o with double acute */,
+ {0x0154, 0xc0} /* capital letter r with acute */,
+ {0x0155, 0xe0} /* small letter r with acute */,
+ {0x0158, 0xd8} /* capital letter r with caron */,
+ {0x0159, 0xf8} /* small letter r with caron */,
+ {0x015a, 0x8c} /* capital letter s with acute */,
+ {0x015b, 0x9c} /* small letter s with acute */,
+ {0x015e, 0xaa} /* capital letter s with cedilla */,
+ {0x015f, 0xba} /* small letter s with cedilla */,
+ {0x0160, 0x8a} /* capital letter s with caron */,
+ {0x0161, 0x9a} /* small letter s with caron */,
+ {0x0162, 0xde} /* capital letter t with cedilla */,
+ {0x0163, 0xfe} /* small letter t with cedilla */,
+ {0x0164, 0x8d} /* capital letter t with caron */,
+ {0x0165, 0x9d} /* small letter t with caron */,
+ {0x016e, 0xd9} /* capital letter u with ring above */,
+ {0x016f, 0xf9} /* small letter u with ring above */,
+ {0x0170, 0xdb} /* capital letter u with double acute */,
+ {0x0171, 0xfb} /* small letter u with double acute */,
+ {0x0179, 0x8f} /* capital letter z with acute */,
+ {0x017a, 0x9f} /* small letter z with acute */,
+ {0x017b, 0xaf} /* capital letter z with dot above */,
+ {0x017c, 0xbf} /* small letter z with dot above */,
+ {0x017d, 0x8e} /* capital letter z with caron */,
+ {0x017e, 0x9e} /* small letter z with caron */,
+ {0x02c7, 0xa1} /* caron */,
+ {0x02d8, 0xa2} /* breve */,
+ {0x02d9, 0xff} /* above */,
+ {0x02db, 0xb2} /* ogonek */,
+ {0x02dd, 0xbd} /* acute accent */,
+ {0x2013, 0x96} /* dash */,
+ {0x2014, 0x97} /* dash */,
+ {0x2018, 0x91} /* single quotation mark */,
+ {0x2019, 0x92} /* single quotation mark */,
+ {0x201a, 0x82} /* low-9 quotation mark */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x94} /* double quotation mark */,
+ {0x201e, 0x84} /* low-9 quotation mark */,
+ {0x2020, 0x86} /* dagger */,
+ {0x2021, 0x87} /* dagger */,
+ {0x2022, 0x95} /* puce */,
+ {0x2026, 0x85} /* horizontal ellipsis */,
+ {0x2030, 0x89} /* mille sign */,
+ {0x2039, 0x8b} /* left-pointing angle quotation mark */,
+ {0x203a, 0x9b} /* right-pointing angle quotation mark */,
+ {0x20ac, 0x80} /* euro */,
+ {0x2122, 0x99} /* mark sign */
+};
+
+/*
+#define cet_ucs4_to_cp1250_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_cp1250_extra[cet_ucs4_to_cp1250_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_cp1250 = /* defined in cet.h */
+{
+ cet_cs_name_cp1250, /* name of character set */
+ cet_cs_alias_cp1250, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_cp1250, /* char to UCS-4 value table */
+ cet_ucs4_ofs_cp1250, /* first non standard character */
+ cet_ucs4_cnt_cp1250, /* number of values in table */
+
+ cet_ucs4_to_cp1250_links, /* UCS-4 to char links */
+ cet_ucs4_to_cp1250_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int cp1250_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x20ac, -1, 0x201a, -1, 0x201e, 0x2026, 0x2020, 0x2021,
+ -1, 0x2030, 0x0160, 0x2039, 0x015a, 0x0164, 0x017d, 0x0179,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, 0x0161, 0x203a, 0x015b, 0x0165, 0x017e, 0x017a,
+ 0x00a0, 0x02c7, 0x02d8, 0x0141, 0x00a4, 0x0104, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x015e, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x017b,
+ 0x00b0, 0x00b1, 0x02db, 0x0142, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x0105, 0x015f, 0x00bb, 0x013d, 0x02dd, 0x013e, 0x017c,
+ 0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7,
+ 0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e,
+ 0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7,
+ 0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df,
+ 0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7,
+ 0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f,
+ 0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7,
+ 0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CP1251" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef cp1251_h
+#define cp1251_h
+
+#define cet_cs_name_cp1251 "CP1251"
+
+const char *cet_cs_alias_cp1251[] =
+{
+ "CP1251/CR-LF", "1251/CR-LF", "ms-cyrl", "windows-1251", "WIN-CP1251",
+ NULL
+};
+
+#define cet_ucs4_ofs_cp1251 128
+#define cet_ucs4_cnt_cp1251 128
+
+const int cet_ucs4_map_cp1251[cet_ucs4_cnt_cp1251] =
+{
+ 0x0402, 0x0403, 0x201a, 0x0453, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x20ac, 0x2030, 0x0409, 0x2039, 0x040a, 0x040c, 0x040b, 0x040f,
+ 0x0452, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, 0x0459, 0x203a, 0x045a, 0x045c, 0x045b, 0x045f,
+ 0x00a0, 0x040e, 0x045e, 0x0408, 0x00a4, 0x0490, 0x00a6, 0x00a7,
+ 0x0401, 0x00a9, 0x0404, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x0407,
+ 0x00b0, 0x00b1, 0x0406, 0x0456, 0x0491, 0x00b5, 0x00b6, 0x00b7,
+ 0x0451, 0x2116, 0x0454, 0x00bb, 0x0458, 0x0405, 0x0455, 0x0457,
+ 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+ 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+ 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+ 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+ 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+ 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+ 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+ 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f
+};
+
+#define cet_ucs4_to_cp1251_ct 112
+
+const cet_ucs4_link_t cet_ucs4_to_cp1251_links[cet_ucs4_to_cp1251_ct] =
+{
+ {0x0401, 0xa8} /* capital letter io */,
+ {0x0402, 0x80} /* capital letter dje (serbocroatian) */,
+ {0x0403, 0x81} /* capital letter gje (macedonian) */,
+ {0x0404, 0xaa} /* capital letter ukrainian ie */,
+ {0x0405, 0xbd} /* capital letter dze (macedonian) */,
+ {0x0406, 0xb2} /* capital letter byelorussian-ukrainian i */,
+ {0x0407, 0xaf} /* capital letter yi (ukrainian) */,
+ {0x0408, 0xa3} /* capital letter je */,
+ {0x0409, 0x8a} /* capital letter lje */,
+ {0x040a, 0x8c} /* capital letter nje */,
+ {0x040b, 0x8e} /* capital letter tshe (serbocroatian) */,
+ {0x040c, 0x8d} /* capital letter kje (macedonian) */,
+ {0x040e, 0xa1} /* capital letter short u (byelorussian) */,
+ {0x040f, 0x8f} /* capital letter dzhe */,
+ {0x0410, 0xc0} /* capital letter a */,
+ {0x0411, 0xc1} /* capital letter be */,
+ {0x0412, 0xc2} /* capital letter ve */,
+ {0x0413, 0xc3} /* capital letter ghe */,
+ {0x0414, 0xc4} /* capital letter de */,
+ {0x0415, 0xc5} /* capital letter ie */,
+ {0x0416, 0xc6} /* capital letter zhe */,
+ {0x0417, 0xc7} /* capital letter ze */,
+ {0x0418, 0xc8} /* capital letter i */,
+ {0x0419, 0xc9} /* capital letter short i */,
+ {0x041a, 0xca} /* capital letter ka */,
+ {0x041b, 0xcb} /* capital letter el */,
+ {0x041c, 0xcc} /* capital letter em */,
+ {0x041d, 0xcd} /* capital letter en */,
+ {0x041e, 0xce} /* capital letter o */,
+ {0x041f, 0xcf} /* capital letter pe */,
+ {0x0420, 0xd0} /* capital letter er */,
+ {0x0421, 0xd1} /* capital letter es */,
+ {0x0422, 0xd2} /* capital letter te */,
+ {0x0423, 0xd3} /* capital letter u */,
+ {0x0424, 0xd4} /* capital letter ef */,
+ {0x0425, 0xd5} /* capital letter ha */,
+ {0x0426, 0xd6} /* capital letter tse */,
+ {0x0427, 0xd7} /* capital letter che */,
+ {0x0428, 0xd8} /* capital letter sha */,
+ {0x0429, 0xd9} /* capital letter shcha */,
+ {0x042a, 0xda} /* capital letter hard sign */,
+ {0x042b, 0xdb} /* capital letter yeru */,
+ {0x042c, 0xdc} /* capital letter soft sign */,
+ {0x042d, 0xdd} /* capital letter e */,
+ {0x042e, 0xde} /* capital letter yu */,
+ {0x042f, 0xdf} /* capital letter ya */,
+ {0x0430, 0xe0} /* small letter a */,
+ {0x0431, 0xe1} /* small letter be */,
+ {0x0432, 0xe2} /* small letter ve */,
+ {0x0433, 0xe3} /* small letter ghe */,
+ {0x0434, 0xe4} /* small letter de */,
+ {0x0435, 0xe5} /* small letter ie */,
+ {0x0436, 0xe6} /* small letter zhe */,
+ {0x0437, 0xe7} /* small letter ze */,
+ {0x0438, 0xe8} /* small letter i */,
+ {0x0439, 0xe9} /* small letter short i */,
+ {0x043a, 0xea} /* small letter ka */,
+ {0x043b, 0xeb} /* small letter el */,
+ {0x043c, 0xec} /* small letter em */,
+ {0x043d, 0xed} /* small letter en */,
+ {0x043e, 0xee} /* small letter o */,
+ {0x043f, 0xef} /* small letter pe */,
+ {0x0440, 0xf0} /* small letter er */,
+ {0x0441, 0xf1} /* small letter es */,
+ {0x0442, 0xf2} /* small letter te */,
+ {0x0443, 0xf3} /* small letter u */,
+ {0x0444, 0xf4} /* small letter ef */,
+ {0x0445, 0xf5} /* small letter ha */,
+ {0x0446, 0xf6} /* small letter tse */,
+ {0x0447, 0xf7} /* small letter che */,
+ {0x0448, 0xf8} /* small letter sha */,
+ {0x0449, 0xf9} /* small letter shcha */,
+ {0x044a, 0xfa} /* small letter hard sign */,
+ {0x044b, 0xfb} /* small letter yeru */,
+ {0x044c, 0xfc} /* small letter soft sign */,
+ {0x044d, 0xfd} /* small letter e */,
+ {0x044e, 0xfe} /* small letter yu */,
+ {0x044f, 0xff} /* small letter ya */,
+ {0x0451, 0xb8} /* small letter io */,
+ {0x0452, 0x90} /* small letter dje (serbocroatian) */,
+ {0x0453, 0x83} /* small letter gje (macedonian) */,
+ {0x0454, 0xba} /* small letter ukrainian ie */,
+ {0x0455, 0xbe} /* small letter dze (macedonian) */,
+ {0x0456, 0xb3} /* small letter byelorussian-ukrainian i */,
+ {0x0457, 0xbf} /* small letter yi (ukrainian) */,
+ {0x0458, 0xbc} /* small letter je */,
+ {0x0459, 0x9a} /* small letter lje */,
+ {0x045a, 0x9c} /* small letter nje */,
+ {0x045b, 0x9e} /* small letter tshe (serbocroatian) */,
+ {0x045c, 0x9d} /* small letter kje (macedonian) */,
+ {0x045e, 0xa2} /* small letter short u (byelorussian) */,
+ {0x045f, 0x9f} /* small letter dzhe */,
+ {0x0490, 0xa5} /* capital letter ghe with upturn */,
+ {0x0491, 0xb4} /* small letter ghe with upturn */,
+ {0x2013, 0x96} /* dash */,
+ {0x2014, 0x97} /* dash */,
+ {0x2018, 0x91} /* single quotation mark */,
+ {0x2019, 0x92} /* single quotation mark */,
+ {0x201a, 0x82} /* low-9 quotation mark */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x94} /* double quotation mark */,
+ {0x201e, 0x84} /* low-9 quotation mark */,
+ {0x2020, 0x86} /* dagger */,
+ {0x2021, 0x87} /* dagger */,
+ {0x2022, 0x95} /* puce */,
+ {0x2026, 0x85} /* horizontal ellipsis */,
+ {0x2030, 0x89} /* mille sign */,
+ {0x2039, 0x8b} /* left-pointing angle quotation mark */,
+ {0x203a, 0x9b} /* right-pointing angle quotation mark */,
+ {0x20ac, 0x88} /* euro */,
+ {0x2116, 0xb9} /* sign */,
+ {0x2122, 0x99} /* mark sign */
+};
+
+/*
+#define cet_ucs4_to_cp1251_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_cp1251_extra[cet_ucs4_to_cp1251_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_cp1251 = /* defined in cet.h */
+{
+ cet_cs_name_cp1251, /* name of character set */
+ cet_cs_alias_cp1251, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_cp1251, /* char to UCS-4 value table */
+ cet_ucs4_ofs_cp1251, /* first non standard character */
+ cet_ucs4_cnt_cp1251, /* number of values in table */
+
+ cet_ucs4_to_cp1251_links, /* UCS-4 to char links */
+ cet_ucs4_to_cp1251_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int cp1251_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0402, 0x0403, 0x201a, 0x0453, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x20ac, 0x2030, 0x0409, 0x2039, 0x040a, 0x040c, 0x040b, 0x040f,
+ 0x0452, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, 0x0459, 0x203a, 0x045a, 0x045c, 0x045b, 0x045f,
+ 0x00a0, 0x040e, 0x045e, 0x0408, 0x00a4, 0x0490, 0x00a6, 0x00a7,
+ 0x0401, 0x00a9, 0x0404, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x0407,
+ 0x00b0, 0x00b1, 0x0406, 0x0456, 0x0491, 0x00b5, 0x00b6, 0x00b7,
+ 0x0451, 0x2116, 0x0454, 0x00bb, 0x0458, 0x0405, 0x0455, 0x0457,
+ 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+ 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+ 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+ 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+ 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+ 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+ 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+ 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CP1252" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef cp1252_h
+#define cp1252_h
+
+#define cet_cs_name_cp1252 "CP1252"
+
+const char *cet_cs_alias_cp1252[] =
+{
+ "CP1252/CR-LF", "1252/CR-LF", "ms-ansi", "windows-1252", "WIN-CP1252",
+ NULL
+};
+
+#define cet_ucs4_ofs_cp1252 128
+#define cet_ucs4_cnt_cp1252 128
+
+const int cet_ucs4_map_cp1252[cet_ucs4_cnt_cp1252] =
+{
+ 0x20ac, -1, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, -1, 0x017d, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, -1, 0x017e, 0x0178,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
+};
+
+#define cet_ucs4_to_cp1252_ct 27
+
+const cet_ucs4_link_t cet_ucs4_to_cp1252_links[cet_ucs4_to_cp1252_ct] =
+{
+ {0x0152, 0x8c} /* capital ligature oe */,
+ {0x0153, 0x9c} /* small ligature oe */,
+ {0x0160, 0x8a} /* capital letter s with caron */,
+ {0x0161, 0x9a} /* small letter s with caron */,
+ {0x0178, 0x9f} /* capital letter y with diaeresis */,
+ {0x017d, 0x8e} /* capital letter z with caron */,
+ {0x017e, 0x9e} /* small letter z with caron */,
+ {0x0192, 0x83} /* minuscule latine f hameçon */,
+ {0x02c6, 0x88} /* modificative accent circonflexe */,
+ {0x02dc, 0x98} /* tilde */,
+ {0x2013, 0x96} /* dash */,
+ {0x2014, 0x97} /* dash */,
+ {0x2018, 0x91} /* single quotation mark */,
+ {0x2019, 0x92} /* single quotation mark */,
+ {0x201a, 0x82} /* low-9 quotation mark */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x94} /* double quotation mark */,
+ {0x201e, 0x84} /* low-9 quotation mark */,
+ {0x2020, 0x86} /* dagger */,
+ {0x2021, 0x87} /* dagger */,
+ {0x2022, 0x95} /* puce */,
+ {0x2026, 0x85} /* horizontal ellipsis */,
+ {0x2030, 0x89} /* mille sign */,
+ {0x2039, 0x8b} /* left-pointing angle quotation mark */,
+ {0x203a, 0x9b} /* right-pointing angle quotation mark */,
+ {0x20ac, 0x80} /* euro */,
+ {0x2122, 0x99} /* mark sign */
+};
+
+/*
+#define cet_ucs4_to_cp1252_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_cp1252_extra[cet_ucs4_to_cp1252_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_cp1252 = /* defined in cet.h */
+{
+ cet_cs_name_cp1252, /* name of character set */
+ cet_cs_alias_cp1252, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_cp1252, /* char to UCS-4 value table */
+ cet_ucs4_ofs_cp1252, /* first non standard character */
+ cet_ucs4_cnt_cp1252, /* number of values in table */
+
+ cet_ucs4_to_cp1252_links, /* UCS-4 to char links */
+ cet_ucs4_to_cp1252_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int cp1252_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x20ac, -1, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, -1, 0x017d, 0x017e,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, -1, -1, 0x0178,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CP1253" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef cp1253_h
+#define cp1253_h
+
+#define cet_cs_name_cp1253 "CP1253"
+
+const char *cet_cs_alias_cp1253[] =
+{
+ "CP1253/CR-LF", "1253/CR-LF", "ms-greek", "windows-1253", "WIN-CP1253",
+ NULL
+};
+
+#define cet_ucs4_ofs_cp1253 128
+#define cet_ucs4_cnt_cp1253 127
+
+const int cet_ucs4_map_cp1253[cet_ucs4_cnt_cp1253] =
+{
+ 0x20ac, -1, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+ -1, 0x2030, -1, 0x2039, -1, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, -1, 0x203a, -1, -1, -1, -1,
+ 0x00a0, 0x0385, 0x0386, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, -1, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x2015,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x0384, 0x00b5, 0x00b6, 0x00b7,
+ 0x0388, 0x0389, 0x038a, 0x00bb, 0x038c, 0x00bd, 0x038e, 0x038f,
+ 0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
+ 0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f,
+ 0x03a0, 0x03a1, -1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7,
+ 0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x03ac, 0x03ad, 0x03ae, 0x03af,
+ 0x03b0, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
+ 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf,
+ 0x03c0, 0x03c1, 0x03c2, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
+ 0x03c8, 0x03c9, 0x03ca, 0x03cb, 0x03cc, 0x03cd, 0x03ce
+};
+
+#define cet_ucs4_to_cp1253_ct 90
+
+const cet_ucs4_link_t cet_ucs4_to_cp1253_links[cet_ucs4_to_cp1253_ct] =
+{
+ {0x0192, 0x83} /* minuscule latine f hameçon */,
+ {0x0384, 0xb4} /* grec tonos */,
+ {0x0385, 0xa1} /* accent and diaeresis (tonos and dialytika) */,
+ {0x0386, 0xa2} /* capital letter alpha with acute */,
+ {0x0388, 0xb8} /* capital letter epsilon with acute */,
+ {0x0389, 0xb9} /* capital letter eta with acute */,
+ {0x038a, 0xba} /* capital letter iota with acute */,
+ {0x038c, 0xbc} /* capital letter omicron with acute */,
+ {0x038e, 0xbe} /* capital letter upsilon with acute */,
+ {0x038f, 0xbf} /* capital letter omega with acute */,
+ {0x0390, 0xc0} /* small letter iota with acute and diaeresis */,
+ {0x0391, 0xc1} /* capital letter alpha */,
+ {0x0392, 0xc2} /* capital letter beta */,
+ {0x0393, 0xc3} /* capital letter gamma */,
+ {0x0394, 0xc4} /* capital letter delta */,
+ {0x0395, 0xc5} /* capital letter epsilon */,
+ {0x0396, 0xc6} /* capital letter zeta */,
+ {0x0397, 0xc7} /* capital letter eta */,
+ {0x0398, 0xc8} /* capital letter theta */,
+ {0x0399, 0xc9} /* capital letter iota */,
+ {0x039a, 0xca} /* capital letter kappa */,
+ {0x039b, 0xcb} /* capital letter lamda */,
+ {0x039c, 0xcc} /* capital letter mu */,
+ {0x039d, 0xcd} /* capital letter nu */,
+ {0x039e, 0xce} /* capital letter xi */,
+ {0x039f, 0xcf} /* capital letter omicron */,
+ {0x03a0, 0xd0} /* capital letter pi */,
+ {0x03a1, 0xd1} /* capital letter rho */,
+ {0x03a3, 0xd3} /* capital letter sigma */,
+ {0x03a4, 0xd4} /* capital letter tau */,
+ {0x03a5, 0xd5} /* capital letter upsilon */,
+ {0x03a6, 0xd6} /* capital letter phi */,
+ {0x03a7, 0xd7} /* capital letter chi */,
+ {0x03a8, 0xd8} /* capital letter psi */,
+ {0x03a9, 0xd9} /* capital letter omega */,
+ {0x03aa, 0xda} /* capital letter iota with diaeresis */,
+ {0x03ab, 0xdb} /* capital letter upsilon with diaeresis */,
+ {0x03ac, 0xdc} /* small letter alpha with acute */,
+ {0x03ad, 0xdd} /* small letter epsilon with acute */,
+ {0x03ae, 0xde} /* small letter eta with acute */,
+ {0x03af, 0xdf} /* small letter iota with acute */,
+ {0x03b0, 0xe0} /* small letter upsilon with acute and diaeresis */,
+ {0x03b1, 0xe1} /* small letter alpha */,
+ {0x03b2, 0xe2} /* small letter beta */,
+ {0x03b3, 0xe3} /* small letter gamma */,
+ {0x03b4, 0xe4} /* small letter delta */,
+ {0x03b5, 0xe5} /* small letter epsilon */,
+ {0x03b6, 0xe6} /* small letter zeta */,
+ {0x03b7, 0xe7} /* small letter eta */,
+ {0x03b8, 0xe8} /* small letter theta */,
+ {0x03b9, 0xe9} /* small letter iota */,
+ {0x03ba, 0xea} /* small letter kappa */,
+ {0x03bb, 0xeb} /* small letter lamda */,
+ {0x03bc, 0xec} /* small letter mu */,
+ {0x03bd, 0xed} /* small letter nu */,
+ {0x03be, 0xee} /* small letter xi */,
+ {0x03bf, 0xef} /* small letter omicron */,
+ {0x03c0, 0xf0} /* small letter pi */,
+ {0x03c1, 0xf1} /* small letter rho */,
+ {0x03c2, 0xf2} /* small letter final sigma */,
+ {0x03c3, 0xf3} /* small letter sigma */,
+ {0x03c4, 0xf4} /* small letter tau */,
+ {0x03c5, 0xf5} /* small letter upsilon */,
+ {0x03c6, 0xf6} /* small letter phi */,
+ {0x03c7, 0xf7} /* small letter chi */,
+ {0x03c8, 0xf8} /* small letter psi */,
+ {0x03c9, 0xf9} /* small letter omega */,
+ {0x03ca, 0xfa} /* small letter iota with diaeresis */,
+ {0x03cb, 0xfb} /* small letter upsilon with diaeresis */,
+ {0x03cc, 0xfc} /* small letter omicron with acute */,
+ {0x03cd, 0xfd} /* small letter upsilon with acute */,
+ {0x03ce, 0xfe} /* small letter omega with acute */,
+ {0x2013, 0x96} /* dash */,
+ {0x2014, 0x97} /* dash */,
+ {0x2015, 0xaf} /* bar */,
+ {0x2018, 0x91} /* single quotation mark */,
+ {0x2019, 0x92} /* single quotation mark */,
+ {0x201a, 0x82} /* low-9 quotation mark */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x94} /* double quotation mark */,
+ {0x201e, 0x84} /* low-9 quotation mark */,
+ {0x2020, 0x86} /* dagger */,
+ {0x2021, 0x87} /* dagger */,
+ {0x2022, 0x95} /* puce */,
+ {0x2026, 0x85} /* horizontal ellipsis */,
+ {0x2030, 0x89} /* mille sign */,
+ {0x2039, 0x8b} /* left-pointing angle quotation mark */,
+ {0x203a, 0x9b} /* right-pointing angle quotation mark */,
+ {0x20ac, 0x80} /* euro */,
+ {0x2122, 0x99} /* mark sign */
+};
+
+/*
+#define cet_ucs4_to_cp1253_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_cp1253_extra[cet_ucs4_to_cp1253_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_cp1253 = /* defined in cet.h */
+{
+ cet_cs_name_cp1253, /* name of character set */
+ cet_cs_alias_cp1253, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_cp1253, /* char to UCS-4 value table */
+ cet_ucs4_ofs_cp1253, /* first non standard character */
+ cet_ucs4_cnt_cp1253, /* number of values in table */
+
+ cet_ucs4_to_cp1253_links, /* UCS-4 to char links */
+ cet_ucs4_to_cp1253_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int cp1253_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x20ac, -1, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+ -1, 0x2030, -1, 0x2039, -1, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, -1, 0x203a, -1, -1, -1, -1,
+ 0x00a0, 0x0385, 0x0386, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, -1, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x2015,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x0384, 0x00b5, 0x00b6, 0x00b7,
+ 0x0388, 0x0389, 0x038a, 0x00bb, 0x038c, 0x00bd, 0x038e, 0x038f,
+ 0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
+ 0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f,
+ 0x03a0, 0x03a1, -1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7,
+ 0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x03ac, 0x03ad, 0x03ae, 0x03af,
+ 0x03b0, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
+ 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf,
+ 0x03c0, 0x03c1, 0x03c2, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
+ 0x03c8, 0x03c9, 0x03ca, 0x03cb, 0x03cc, 0x03cd, 0x03ce, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CP1254" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef cp1254_h
+#define cp1254_h
+
+#define cet_cs_name_cp1254 "CP1254"
+
+const char *cet_cs_alias_cp1254[] =
+{
+ "CP1254/CR-LF", "1254/CR-LF", "ms-turk", "windows-1254", "WIN-CP1254",
+ NULL
+};
+
+#define cet_ucs4_ofs_cp1254 128
+#define cet_ucs4_cnt_cp1254 128
+
+const int cet_ucs4_map_cp1254[cet_ucs4_cnt_cp1254] =
+{
+ 0x20ac, -1, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, -1, -1, 0x0178,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x011e, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0130, 0x015e, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x012b,
+ 0x011f, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x0131, 0x015f, 0x00ff
+};
+
+#define cet_ucs4_to_cp1254_ct 34
+
+const cet_ucs4_link_t cet_ucs4_to_cp1254_links[cet_ucs4_to_cp1254_ct] =
+{
+ {0x0117, 0xec} /* small letter e with dot above */,
+ {0x0119, 0xea} /* small letter e with ogonek */,
+ {0x011e, 0xd0} /* capital letter g with breve */,
+ {0x011f, 0xf0} /* small letter g with breve */,
+ {0x012b, 0xef} /* small letter i with macron */,
+ {0x0130, 0xdd} /* capital letter i with dot above */,
+ {0x0131, 0xfd} /* small letter i dotless */,
+ {0x0152, 0x8c} /* capital ligature oe */,
+ {0x0153, 0x9c} /* small ligature oe */,
+ {0x015e, 0xde} /* capital letter s with cedilla */,
+ {0x015f, 0xfe} /* small letter s with cedilla */,
+ {0x0160, 0x8a} /* capital letter s with caron */,
+ {0x0161, 0x9a} /* small letter s with caron */,
+ {0x0178, 0x9f} /* capital letter y with diaeresis */,
+ {0x0192, 0x83} /* minuscule latine f hameçon */,
+ {0x02c6, 0x88} /* modificative accent circonflexe */,
+ {0x02dc, 0x98} /* tilde */,
+ {0x2013, 0x96} /* dash */,
+ {0x2014, 0x97} /* dash */,
+ {0x2018, 0x91} /* single quotation mark */,
+ {0x2019, 0x92} /* single quotation mark */,
+ {0x201a, 0x82} /* low-9 quotation mark */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x94} /* double quotation mark */,
+ {0x201e, 0x84} /* low-9 quotation mark */,
+ {0x2020, 0x86} /* dagger */,
+ {0x2021, 0x87} /* dagger */,
+ {0x2022, 0x95} /* puce */,
+ {0x2026, 0x85} /* horizontal ellipsis */,
+ {0x2030, 0x89} /* mille sign */,
+ {0x2039, 0x8b} /* left-pointing angle quotation mark */,
+ {0x203a, 0x9b} /* right-pointing angle quotation mark */,
+ {0x20ac, 0x80} /* euro */,
+ {0x2122, 0x99} /* mark sign */
+};
+
+/*
+#define cet_ucs4_to_cp1254_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_cp1254_extra[cet_ucs4_to_cp1254_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_cp1254 = /* defined in cet.h */
+{
+ cet_cs_name_cp1254, /* name of character set */
+ cet_cs_alias_cp1254, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_cp1254, /* char to UCS-4 value table */
+ cet_ucs4_ofs_cp1254, /* first non standard character */
+ cet_ucs4_cnt_cp1254, /* number of values in table */
+
+ cet_ucs4_to_cp1254_links, /* UCS-4 to char links */
+ cet_ucs4_to_cp1254_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int cp1254_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x20ac, -1, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, -1, -1, 0x0178,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x011e, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0130, 0x015e, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x012b,
+ 0x011f, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x0131, 0x015f, 0x00ff
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CP1255" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef cp1255_h
+#define cp1255_h
+
+#define cet_cs_name_cp1255 "CP1255"
+
+const char *cet_cs_alias_cp1255[] =
+{
+ "CP1255/CR-LF", "1255/CR-LF", "ms-hebr", "windows-1255", "WIN-CP1255",
+ NULL
+};
+
+#define cet_ucs4_ofs_cp1255 128
+#define cet_ucs4_cnt_cp1255 127
+
+const int cet_ucs4_map_cp1255[cet_ucs4_cnt_cp1255] =
+{
+ 0x20ac, -1, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+ -1, 0x2030, -1, 0x2039, -1, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, -1, 0x203a, -1, -1, -1, -1,
+ 0x00a0, -1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00d7, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x203e,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00f7, 0x00bb, 0x00bc, 0x00bd, 0x00be, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 0x2017,
+ 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+ 0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+ 0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+ 0x05e8, 0x05e9, 0x05ea, -1, -1, 0x200e, 0x200f
+};
+
+#define cet_ucs4_to_cp1255_ct 51
+
+const cet_ucs4_link_t cet_ucs4_to_cp1255_links[cet_ucs4_to_cp1255_ct] =
+{
+ {0x00d7, 0xaa} /* sign */,
+ {0x00f7, 0xba} /* sign */,
+ {0x0192, 0x83} /* minuscule latine f hameçon */,
+ {0x05d0, 0xe0} /* letter alef */,
+ {0x05d1, 0xe1} /* letter bet */,
+ {0x05d2, 0xe2} /* letter gimel */,
+ {0x05d3, 0xe3} /* letter dalet */,
+ {0x05d4, 0xe4} /* letter he */,
+ {0x05d5, 0xe5} /* letter vav */,
+ {0x05d6, 0xe6} /* letter zayin */,
+ {0x05d7, 0xe7} /* letter het */,
+ {0x05d8, 0xe8} /* letter tet */,
+ {0x05d9, 0xe9} /* letter yod */,
+ {0x05da, 0xea} /* letter final kaf */,
+ {0x05db, 0xeb} /* letter kaf */,
+ {0x05dc, 0xec} /* letter lamed */,
+ {0x05dd, 0xed} /* letter final mem */,
+ {0x05de, 0xee} /* letter mem */,
+ {0x05df, 0xef} /* letter final nun */,
+ {0x05e0, 0xf0} /* letter nun */,
+ {0x05e1, 0xf1} /* letter samekh */,
+ {0x05e2, 0xf2} /* letter ayin */,
+ {0x05e3, 0xf3} /* letter final pe */,
+ {0x05e4, 0xf4} /* letter pe */,
+ {0x05e5, 0xf5} /* letter final tsadi */,
+ {0x05e6, 0xf6} /* letter tsadi */,
+ {0x05e7, 0xf7} /* letter qof */,
+ {0x05e8, 0xf8} /* letter resh */,
+ {0x05e9, 0xf9} /* letter shin */,
+ {0x05ea, 0xfa} /* letter tav */,
+ {0x200e, 0xfd} /* gauche-Ã -droite */,
+ {0x200f, 0xfe} /* droite-Ã -gauche */,
+ {0x2013, 0x96} /* dash */,
+ {0x2014, 0x97} /* dash */,
+ {0x2017, 0xdf} /* low line */,
+ {0x2018, 0x91} /* single quotation mark */,
+ {0x2019, 0x92} /* single quotation mark */,
+ {0x201a, 0x82} /* low-9 quotation mark */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x94} /* double quotation mark */,
+ {0x201e, 0x84} /* low-9 quotation mark */,
+ {0x2020, 0x86} /* dagger */,
+ {0x2021, 0x87} /* dagger */,
+ {0x2022, 0x95} /* puce */,
+ {0x2026, 0x85} /* horizontal ellipsis */,
+ {0x2030, 0x89} /* mille sign */,
+ {0x2039, 0x8b} /* left-pointing angle quotation mark */,
+ {0x203a, 0x9b} /* right-pointing angle quotation mark */,
+ {0x203e, 0xaf} /* overline */,
+ {0x20ac, 0x80} /* euro */,
+ {0x2122, 0x99} /* mark sign */
+};
+
+/*
+#define cet_ucs4_to_cp1255_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_cp1255_extra[cet_ucs4_to_cp1255_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_cp1255 = /* defined in cet.h */
+{
+ cet_cs_name_cp1255, /* name of character set */
+ cet_cs_alias_cp1255, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_cp1255, /* char to UCS-4 value table */
+ cet_ucs4_ofs_cp1255, /* first non standard character */
+ cet_ucs4_cnt_cp1255, /* number of values in table */
+
+ cet_ucs4_to_cp1255_links, /* UCS-4 to char links */
+ cet_ucs4_to_cp1255_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int cp1255_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x20ac, -1, 0x201a, 0x0192, 0x201e, 0x2026, 0x2020, 0x2021,
+ -1, 0x2030, -1, 0x2039, -1, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, -1, 0x203a, -1, -1, -1, -1,
+ 0x00a0, -1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00d7, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x203e,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00f7, 0x00bb, 0x00bc, 0x00bd, 0x00be, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 0x2017,
+ 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+ 0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+ 0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+ 0x05e8, 0x05e9, 0x05ea, -1, -1, 0x200e, 0x200f, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CP1256" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef cp1256_h
+#define cp1256_h
+
+#define cet_cs_name_cp1256 "CP1256"
+
+const char *cet_cs_alias_cp1256[] =
+{
+ "CP1256/CR-LF", "1256/CR-LF", "ms-arab", "windows-1256", "WIN-CP1256",
+ NULL
+};
+
+#define cet_ucs4_ofs_cp1256 128
+#define cet_ucs4_cnt_cp1256 128
+
+const int cet_ucs4_map_cp1256[cet_ucs4_cnt_cp1256] =
+{
+ 0x20ac, 0x0660, 0x201a, 0x0661, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x0662, 0x0663, 0x0664, 0x2039, 0x0665, 0x0666, 0x0667, 0x0668,
+ 0x0669, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ 0x061b, 0x2122, 0x061f, 0x203a, 0x0621, 0x0622, 0x0623, 0x0178,
+ 0x00a0, 0x0624, 0x0625, 0x00a3, 0x00a4, 0x0626, 0x00a6, 0x00a7,
+ 0x0627, 0x00a9, 0x0628, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x067e,
+ 0x00b0, 0x00b1, 0x0629, 0x062a, 0x062b, 0x00b5, 0x00b6, 0x00b7,
+ 0x062c, 0x0686, 0x062d, 0x00bb, 0x062e, 0x062f, 0x0630, 0x0631,
+ 0x00c0, 0x0632, 0x00c2, 0x0698, 0x0633, 0x0634, 0x0635, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x0636, 0x0637, 0x00ce, 0x00cf,
+ 0x3113, 0x0639, 0x063a, 0x0640, 0x00d4, 0x0641, 0x0642, 0x00d7,
+ 0x0643, 0x00d9, 0x06af, 0x00db, 0x00dc, 0x0644, 0x0645, 0x0646,
+ 0x00e0, 0x0647, 0x00e2, 0x0681, 0x0648, 0x0649, 0x064a, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x064b, 0x064c, 0x00ee, 0x00ef,
+ 0x064d, 0x064e, 0x064f, 0x0650, 0x00f4, 0x0651, 0x0652, 0x00f7,
+ -1, 0x00f9, -1, 0x00fb, 0x00fc, 0x200e, 0x200f, 0x00ff
+};
+
+#define cet_ucs4_to_cp1256_ct 81
+
+const cet_ucs4_link_t cet_ucs4_to_cp1256_links[cet_ucs4_to_cp1256_ct] =
+{
+ {0x0178, 0x9f} /* capital letter y with diaeresis */,
+ {0x061b, 0x98} /* semicolon */,
+ {0x061f, 0x9a} /* question mark */,
+ {0x0621, 0x9c} /* letter hamza */,
+ {0x0622, 0x9d} /* letter alef with madda above */,
+ {0x0623, 0x9e} /* letter alef with hamza above */,
+ {0x0624, 0xa1} /* letter waw with hamza above */,
+ {0x0625, 0xa2} /* letter alef with hamza below */,
+ {0x0626, 0xa5} /* letter yeh with hamza above */,
+ {0x0627, 0xa8} /* letter alef */,
+ {0x0628, 0xaa} /* letter beh */,
+ {0x0629, 0xb2} /* letter teh marbuta */,
+ {0x062a, 0xb3} /* letter teh */,
+ {0x062b, 0xb4} /* letter theh */,
+ {0x062c, 0xb8} /* letter jeem */,
+ {0x062d, 0xba} /* letter hah */,
+ {0x062e, 0xbc} /* letter khah */,
+ {0x062f, 0xbd} /* letter dal */,
+ {0x0630, 0xbe} /* letter thal */,
+ {0x0631, 0xbf} /* letter reh */,
+ {0x0632, 0xc1} /* letter zain */,
+ {0x0633, 0xc4} /* letter seen */,
+ {0x0634, 0xc5} /* letter sheen */,
+ {0x0635, 0xc6} /* letter sad */,
+ {0x0636, 0xcc} /* letter dad */,
+ {0x0637, 0xcd} /* letter tah */,
+ {0x0639, 0xd1} /* letter ain */,
+ {0x063a, 0xd2} /* letter ghain */,
+ {0x0640, 0xd3} /* tatweel */,
+ {0x0641, 0xd5} /* letter feh */,
+ {0x0642, 0xd6} /* letter qaf */,
+ {0x0643, 0xd8} /* letter kaf */,
+ {0x0644, 0xdd} /* letter lam */,
+ {0x0645, 0xde} /* letter meem */,
+ {0x0646, 0xdf} /* letter noon */,
+ {0x0647, 0xe1} /* letter heh */,
+ {0x0648, 0xe4} /* letter waw */,
+ {0x0649, 0xe5} /* letter alef maksura */,
+ {0x064a, 0xe6} /* letter yeh */,
+ {0x064b, 0xec} /* fathatan */,
+ {0x064c, 0xed} /* dammatan */,
+ {0x064d, 0xf0} /* kasratan */,
+ {0x064e, 0xf1} /* fatha */,
+ {0x064f, 0xf2} /* damma */,
+ {0x0650, 0xf3} /* kasra */,
+ {0x0651, 0xf5} /* shadda */,
+ {0x0652, 0xf6} /* sukun */,
+ {0x0660, 0x81} /* arabic-indic digit zero */,
+ {0x0661, 0x83} /* arabic-indic digit one */,
+ {0x0662, 0x88} /* arabic-indic digit two */,
+ {0x0663, 0x89} /* arabic-indic digit three */,
+ {0x0664, 0x8a} /* arabic-indic digit four */,
+ {0x0665, 0x8c} /* arabic-indic digit five */,
+ {0x0666, 0x8d} /* arabic-indic digit six */,
+ {0x0667, 0x8e} /* arabic-indic digit seven */,
+ {0x0668, 0x8f} /* arabic-indic digit eight */,
+ {0x0669, 0x90} /* arabic-indic digit nine */,
+ {0x067e, 0xaf} /* letter peh */,
+ {0x0681, 0xe3} /* arabe ha' hamza en chef */,
+ {0x0686, 0xb9} /* arabe tchim' */,
+ {0x0698, 0xc3} /* arabe ja' */,
+ {0x06af, 0xda} /* letter gaf */,
+ {0x200e, 0xfd} /* gauche-Ã -droite */,
+ {0x200f, 0xfe} /* droite-Ã -gauche */,
+ {0x2013, 0x96} /* dash */,
+ {0x2014, 0x97} /* dash */,
+ {0x2018, 0x91} /* single quotation mark */,
+ {0x2019, 0x92} /* single quotation mark */,
+ {0x201a, 0x82} /* low-9 quotation mark */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x94} /* double quotation mark */,
+ {0x201e, 0x84} /* low-9 quotation mark */,
+ {0x2020, 0x86} /* dagger */,
+ {0x2021, 0x87} /* dagger */,
+ {0x2022, 0x95} /* puce */,
+ {0x2026, 0x85} /* horizontal ellipsis */,
+ {0x2039, 0x8b} /* left-pointing angle quotation mark */,
+ {0x203a, 0x9b} /* right-pointing angle quotation mark */,
+ {0x20ac, 0x80} /* euro */,
+ {0x2122, 0x99} /* mark sign */,
+ {0x3113, 0xd0} /* letter zh */
+};
+
+/*
+#define cet_ucs4_to_cp1256_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_cp1256_extra[cet_ucs4_to_cp1256_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_cp1256 = /* defined in cet.h */
+{
+ cet_cs_name_cp1256, /* name of character set */
+ cet_cs_alias_cp1256, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_cp1256, /* char to UCS-4 value table */
+ cet_ucs4_ofs_cp1256, /* first non standard character */
+ cet_ucs4_cnt_cp1256, /* number of values in table */
+
+ cet_ucs4_to_cp1256_links, /* UCS-4 to char links */
+ cet_ucs4_to_cp1256_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int cp1256_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x20ac, 0x0660, 0x201a, 0x0661, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x0662, 0x0663, 0x0664, 0x2039, 0x0665, 0x0666, 0x0667, 0x0668,
+ 0x0669, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ 0x061b, 0x2122, 0x061f, 0x203a, 0x0621, 0x0622, 0x0623, 0x0178,
+ 0x00a0, 0x0624, 0x0625, 0x00a3, 0x00a4, 0x0626, 0x00a6, 0x00a7,
+ 0x0627, 0x00a9, 0x0628, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x067e,
+ 0x00b0, 0x00b1, 0x0629, 0x062a, 0x062b, 0x00b5, 0x00b6, 0x00b7,
+ 0x062c, 0x0686, 0x062d, 0x00bb, 0x062e, 0x062f, 0x0630, 0x0631,
+ 0x00c0, 0x0632, 0x00c2, 0x0698, 0x0633, 0x0634, 0x0635, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x0636, 0x0637, 0x00ce, 0x00cf,
+ 0x3113, 0x0639, 0x063a, 0x0640, 0x00d4, 0x0641, 0x0642, 0x00d7,
+ 0x0643, 0x00d9, 0x06af, 0x00db, 0x00dc, 0x0644, 0x0645, 0x0646,
+ 0x00e0, 0x0647, 0x00e2, 0x0681, 0x0648, 0x0649, 0x064a, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x064b, 0x064c, 0x00ee, 0x00ef,
+ 0x064d, 0x064e, 0x064f, 0x0650, 0x00f4, 0x0651, 0x0652, 0x00f7,
+ -1, 0x00f9, -1, 0x00fb, 0x00fc, 0x200e, 0x200f, 0x00ff
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CP1257" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef cp1257_h
+#define cp1257_h
+
+#define cet_cs_name_cp1257 "CP1257"
+
+const char *cet_cs_alias_cp1257[] =
+{
+ "CP1257/CR-LF", "1257/CR-LF", "WinBaltRim", "windows-1257", "WIN-CP1257",
+ NULL
+};
+
+#define cet_ucs4_ofs_cp1257 128
+#define cet_ucs4_cnt_cp1257 127
+
+const int cet_ucs4_map_cp1257[cet_ucs4_cnt_cp1257] =
+{
+ 0x20ac, -1, 0x201a, -1, 0x201e, 0x2026, 0x2020, 0x2021,
+ -1, 0x2030, -1, 0x2039, -1, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, -1, 0x203a, -1, -1, -1, -1,
+ 0x00a0, -1, 0x00a2, 0x00a3, 0x00a4, -1, 0x00a6, 0x00a7,
+ 0x00d8, 0x00a9, 0x0156, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00c6,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, -1, 0x00b5, 0x00b6, 0x00b7,
+ 0x00f8, 0x00b9, 0x0157, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00e6,
+ 0x0104, 0x012e, 0x0100, 0x0106, 0x00c4, 0x00c5, 0x0118, 0x0112,
+ 0x010c, 0x00c9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012a, 0x013b,
+ 0x0160, 0x0143, 0x0145, 0x00d3, 0x014c, 0x00d5, 0x00d6, 0x00d7,
+ 0x0172, 0x0141, 0x015a, 0x016a, 0x00dc, 0x017b, 0x017d, 0x00df,
+ 0x0105, 0x012f, 0x0101, 0x0107, 0x00e4, 0x00e5, 0x0119, 0x0113,
+ 0x010d, 0x00e9, 0x017a, 0x0117, 0x0123, 0x0137, 0x012b, 0x013c,
+ 0x0161, 0x0144, 0x0146, 0x00f3, 0x014d, 0x00f5, 0x00f6, 0x00f7,
+ 0x0173, 0x0142, 0x015b, 0x016b, 0x00fc, 0x017c, 0x017e
+};
+
+#define cet_ucs4_to_cp1257_ct 69
+
+const cet_ucs4_link_t cet_ucs4_to_cp1257_links[cet_ucs4_to_cp1257_ct] =
+{
+ {0x00c6, 0xaf} /* capital letter ae */,
+ {0x00d8, 0xa8} /* capital letter o with stroke */,
+ {0x00e6, 0xbf} /* small letter ae */,
+ {0x00f8, 0xb8} /* small letter o with stroke */,
+ {0x0100, 0xc2} /* capital letter a with macron */,
+ {0x0101, 0xe2} /* small letter a with macron */,
+ {0x0104, 0xc0} /* capital letter a with ogonek */,
+ {0x0105, 0xe0} /* small letter a with ogonek */,
+ {0x0106, 0xc3} /* capital letter c with acute */,
+ {0x0107, 0xe3} /* small letter c with acute */,
+ {0x010c, 0xc8} /* capital letter c with caron */,
+ {0x010d, 0xe8} /* small letter c with caron */,
+ {0x0112, 0xc7} /* capital letter e with macron */,
+ {0x0113, 0xe7} /* small letter e with macron */,
+ {0x0116, 0xcb} /* capital letter e with dot above */,
+ {0x0117, 0xeb} /* small letter e with dot above */,
+ {0x0118, 0xc6} /* capital letter e with ogonek */,
+ {0x0119, 0xe6} /* small letter e with ogonek */,
+ {0x0122, 0xcc} /* capital letter g with cedilla */,
+ {0x0123, 0xec} /* small letter g with cedilla */,
+ {0x012a, 0xce} /* capital letter i with macron */,
+ {0x012b, 0xee} /* small letter i with macron */,
+ {0x012e, 0xc1} /* capital letter i with ogonek */,
+ {0x012f, 0xe1} /* small letter i with ogonek */,
+ {0x0136, 0xcd} /* capital letter k with cedilla */,
+ {0x0137, 0xed} /* small letter k with cedilla */,
+ {0x013b, 0xcf} /* capital letter l with cedilla */,
+ {0x013c, 0xef} /* small letter l with cedilla */,
+ {0x0141, 0xd9} /* capital letter l with stroke */,
+ {0x0142, 0xf9} /* small letter l with stroke */,
+ {0x0143, 0xd1} /* capital letter n with acute */,
+ {0x0144, 0xf1} /* small letter n with acute */,
+ {0x0145, 0xd2} /* capital letter n with cedilla */,
+ {0x0146, 0xf2} /* small letter n with cedilla */,
+ {0x014c, 0xd4} /* capital letter o with macron */,
+ {0x014d, 0xf4} /* small letter o with macron */,
+ {0x0156, 0xaa} /* capital letter r with cedilla */,
+ {0x0157, 0xba} /* small letter r with cedilla */,
+ {0x015a, 0xda} /* capital letter s with acute */,
+ {0x015b, 0xfa} /* small letter s with acute */,
+ {0x0160, 0xd0} /* capital letter s with caron */,
+ {0x0161, 0xf0} /* small letter s with caron */,
+ {0x016a, 0xdb} /* capital letter u with macron */,
+ {0x016b, 0xfb} /* small letter u with macron */,
+ {0x0172, 0xd8} /* capital letter u with ogonek */,
+ {0x0173, 0xf8} /* small letter u with ogonek */,
+ {0x0179, 0xca} /* capital letter z with acute */,
+ {0x017a, 0xea} /* small letter z with acute */,
+ {0x017b, 0xdd} /* capital letter z with dot above */,
+ {0x017c, 0xfd} /* small letter z with dot above */,
+ {0x017d, 0xde} /* capital letter z with caron */,
+ {0x017e, 0xfe} /* small letter z with caron */,
+ {0x2013, 0x96} /* dash */,
+ {0x2014, 0x97} /* dash */,
+ {0x2018, 0x91} /* single quotation mark */,
+ {0x2019, 0x92} /* single quotation mark */,
+ {0x201a, 0x82} /* low-9 quotation mark */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x94} /* double quotation mark */,
+ {0x201e, 0x84} /* low-9 quotation mark */,
+ {0x2020, 0x86} /* dagger */,
+ {0x2021, 0x87} /* dagger */,
+ {0x2022, 0x95} /* puce */,
+ {0x2026, 0x85} /* horizontal ellipsis */,
+ {0x2030, 0x89} /* mille sign */,
+ {0x2039, 0x8b} /* left-pointing angle quotation mark */,
+ {0x203a, 0x9b} /* right-pointing angle quotation mark */,
+ {0x20ac, 0x80} /* euro */,
+ {0x2122, 0x99} /* mark sign */
+};
+
+/*
+#define cet_ucs4_to_cp1257_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_cp1257_extra[cet_ucs4_to_cp1257_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_cp1257 = /* defined in cet.h */
+{
+ cet_cs_name_cp1257, /* name of character set */
+ cet_cs_alias_cp1257, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_cp1257, /* char to UCS-4 value table */
+ cet_ucs4_ofs_cp1257, /* first non standard character */
+ cet_ucs4_cnt_cp1257, /* number of values in table */
+
+ cet_ucs4_to_cp1257_links, /* UCS-4 to char links */
+ cet_ucs4_to_cp1257_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int cp1257_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x20ac, -1, 0x201a, -1, 0x201e, 0x2026, 0x2020, 0x2021,
+ -1, 0x2030, -1, 0x2039, -1, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ -1, 0x2122, -1, 0x203a, -1, -1, -1, -1,
+ 0x00a0, -1, 0x00a2, 0x00a3, 0x00a4, -1, 0x00a6, 0x00a7,
+ 0x00d8, 0x00a9, 0x0156, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00c6,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, -1, 0x00b5, 0x00b6, 0x00b7,
+ 0x00f8, 0x00b9, 0x0157, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00e6,
+ 0x0104, 0x012e, 0x0100, 0x0106, 0x00c4, 0x00c5, 0x0118, 0x0112,
+ 0x010c, 0x00c9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012a, 0x013b,
+ 0x0160, 0x0143, 0x0145, 0x00d3, 0x014c, 0x00d5, 0x00d6, 0x00d7,
+ 0x0172, 0x0141, 0x015a, 0x016a, 0x00dc, 0x017b, 0x017d, 0x00df,
+ 0x0105, 0x012f, 0x0101, 0x0107, 0x00e4, 0x00e5, 0x0119, 0x0113,
+ 0x010d, 0x00e9, 0x017a, 0x0117, 0x0123, 0x0137, 0x012b, 0x013c,
+ 0x0161, 0x0144, 0x0146, 0x00f3, 0x014d, 0x00f5, 0x00f6, 0x00f7,
+ 0x0173, 0x0142, 0x015b, 0x016b, 0x00fc, 0x017c, 0x017e, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CSA_Z243.4-1985-1" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef csa_z243_4_1985_1_h
+#define csa_z243_4_1985_1_h
+
+#define cet_cs_name_csa_z243_4_1985_1 "CSA_Z243.4-1985-1"
+
+const char *cet_cs_alias_csa_z243_4_1985_1[] =
+{
+ "CSA_Z243.4-1985-1", "ca", "csa7-1", "ISO646-CA",
+ "iso-ir-121", NULL
+};
+
+#define cet_ucs4_ofs_csa_z243_4_1985_1 64
+#define cet_ucs4_cnt_csa_z243_4_1985_1 64
+
+const int cet_ucs4_map_csa_z243_4_1985_1[cet_ucs4_cnt_csa_z243_4_1985_1] =
+{
+ 0x00e0, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00e2, 0x00e7, 0x00ea, 0x00ee, 0x005f,
+ 0x00f4, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e9, 0x00f9, 0x00e8, 0x00fb, 0x007f
+};
+
+#define cet_ucs4_to_csa_z243_4_1985_1_ct 10
+
+const cet_ucs4_link_t cet_ucs4_to_csa_z243_4_1985_1_links[cet_ucs4_to_csa_z243_4_1985_1_ct] =
+{
+ {0x00e0, 0x40} /* small letter a with grave */,
+ {0x00e2, 0x5b} /* small letter a with circumflex */,
+ {0x00e7, 0x5c} /* small letter c with cedilla */,
+ {0x00e8, 0x7d} /* small letter e with grave */,
+ {0x00e9, 0x7b} /* small letter e with acute */,
+ {0x00ea, 0x5d} /* small letter e with circumflex */,
+ {0x00ee, 0x5e} /* small letter i with circumflex */,
+ {0x00f4, 0x60} /* small letter o with circumflex */,
+ {0x00f9, 0x7c} /* small letter u with grave */,
+ {0x00fb, 0x7e} /* small letter u with circumflex */
+};
+
+/*
+#define cet_ucs4_to_csa_z243_4_1985_1_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_csa_z243_4_1985_1_extra[cet_ucs4_to_csa_z243_4_1985_1_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_csa_z243_4_1985_1 = /* defined in cet.h */
+{
+ cet_cs_name_csa_z243_4_1985_1, /* name of character set */
+ cet_cs_alias_csa_z243_4_1985_1, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_csa_z243_4_1985_1, /* char to UCS-4 value table */
+ cet_ucs4_ofs_csa_z243_4_1985_1, /* first non standard character */
+ cet_ucs4_cnt_csa_z243_4_1985_1, /* number of values in table */
+
+ cet_ucs4_to_csa_z243_4_1985_1_links, /* UCS-4 to char links */
+ cet_ucs4_to_csa_z243_4_1985_1_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int csa_z243_4_1985_1_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00e0, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00e2, 0x00e7, 0x00ea, 0x00ee, 0x005f,
+ 0x00f4, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e9, 0x00f9, 0x00e8, 0x00fb, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CSA_Z243.4-1985-2" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef csa_z243_4_1985_2_h
+#define csa_z243_4_1985_2_h
+
+#define cet_cs_name_csa_z243_4_1985_2 "CSA_Z243.4-1985-2"
+
+const char *cet_cs_alias_csa_z243_4_1985_2[] =
+{
+ "CSA_Z243.4-1985-2", "csa7-2", "ISO646-CA2", "iso-ir-122",
+ NULL
+};
+
+#define cet_ucs4_ofs_csa_z243_4_1985_2 64
+#define cet_ucs4_cnt_csa_z243_4_1985_2 64
+
+const int cet_ucs4_map_csa_z243_4_1985_2[cet_ucs4_cnt_csa_z243_4_1985_2] =
+{
+ 0x00e0, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00e2, 0x00e7, 0x00ea, 0x00c9, 0x005f,
+ 0x00f4, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e9, 0x00f9, 0x00e8, 0x00fb, 0x007f
+};
+
+#define cet_ucs4_to_csa_z243_4_1985_2_ct 10
+
+const cet_ucs4_link_t cet_ucs4_to_csa_z243_4_1985_2_links[cet_ucs4_to_csa_z243_4_1985_2_ct] =
+{
+ {0x00c9, 0x5e} /* capital letter e with acute */,
+ {0x00e0, 0x40} /* small letter a with grave */,
+ {0x00e2, 0x5b} /* small letter a with circumflex */,
+ {0x00e7, 0x5c} /* small letter c with cedilla */,
+ {0x00e8, 0x7d} /* small letter e with grave */,
+ {0x00e9, 0x7b} /* small letter e with acute */,
+ {0x00ea, 0x5d} /* small letter e with circumflex */,
+ {0x00f4, 0x60} /* small letter o with circumflex */,
+ {0x00f9, 0x7c} /* small letter u with grave */,
+ {0x00fb, 0x7e} /* small letter u with circumflex */
+};
+
+/*
+#define cet_ucs4_to_csa_z243_4_1985_2_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_csa_z243_4_1985_2_extra[cet_ucs4_to_csa_z243_4_1985_2_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_csa_z243_4_1985_2 = /* defined in cet.h */
+{
+ cet_cs_name_csa_z243_4_1985_2, /* name of character set */
+ cet_cs_alias_csa_z243_4_1985_2, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_csa_z243_4_1985_2, /* char to UCS-4 value table */
+ cet_ucs4_ofs_csa_z243_4_1985_2, /* first non standard character */
+ cet_ucs4_cnt_csa_z243_4_1985_2, /* number of values in table */
+
+ cet_ucs4_to_csa_z243_4_1985_2_links, /* UCS-4 to char links */
+ cet_ucs4_to_csa_z243_4_1985_2_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int csa_z243_4_1985_2_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00e0, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00e2, 0x00e7, 0x00ea, 0x00c9, 0x005f,
+ 0x00f4, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e9, 0x00f9, 0x00e8, 0x00fb, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CSA_Z243.4-1985-gr" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef csa_z243_4_1985_gr_h
+#define csa_z243_4_1985_gr_h
+
+#define cet_cs_name_csa_z243_4_1985_gr "CSA_Z243.4-1985-gr"
+
+const char *cet_cs_alias_csa_z243_4_1985_gr[] =
+{
+ "CSA_Z243.4-1985-gr", "iso-ir-123", NULL
+};
+
+#define cet_ucs4_ofs_csa_z243_4_1985_gr 162
+#define cet_ucs4_cnt_csa_z243_4_1985_gr 94
+
+const int cet_ucs4_map_csa_z243_4_1985_gr[cet_ucs4_cnt_csa_z243_4_1985_gr] =
+{
+ 0x00a8, 0x00a3, 0x00a2, 0x00a5, 0x00b1, 0x00b4, 0x207d, 0x207e,
+ 0x00bd, 0x207a, 0x00b8, 0x00ad, 0x00b7, 0x207b, 0x2070, 0x00b9,
+ 0x00b2, 0x00b3, 0x2074, 0x2075, 0x2076, 0x2077, 0x2078, 0x2079,
+ 0x00bc, 0x00be, 0x21d0, 0x2260, 0x2265, 0x00bf, 0x00c0, 0x00c1,
+ 0x00c2, 0x00c7, 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cd, 0x00ce,
+ 0x00cf, 0x00d1, 0x00d3, 0x00d4, 0x00d9, 0x00da, 0x00db, 0x00dc,
+ 0x00ae, 0x00a7, 0x00b6, 0x00b5, 0x00aa, 0x00ba, 0x2018, 0x2019,
+ 0x201c, 0x201d, 0x00ab, 0x00bb, 0x00b0, 0x00a6, 0x00e0, 0x00e1,
+ 0x00e2, 0x00e7, 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ed, 0x00ee,
+ 0x00ef, 0x00f1, 0x00f3, 0x00f4, 0x00f9, 0x00fa, 0x00fb, 0x00fc,
+ 0x00a9, 0x2500, 0x2502, 0x2514, 0x2518, 0x2510, 0x250c, 0x251c,
+ 0x2534, 0x2524, 0x252c, 0x253c, 0x00ac, 0x2588
+};
+
+#define cet_ucs4_to_csa_z243_4_1985_gr_ct 82
+
+const cet_ucs4_link_t cet_ucs4_to_csa_z243_4_1985_gr_links[cet_ucs4_to_csa_z243_4_1985_gr_ct] =
+{
+ {0x00a2, 0xa4} /* sign */,
+ {0x00a6, 0xdf} /* bar */,
+ {0x00a7, 0xd3} /* sign */,
+ {0x00a8, 0xa2} /* diaeresis */,
+ {0x00a9, 0xf2} /* sign */,
+ {0x00aa, 0xd6} /* ordinal indicator */,
+ {0x00ab, 0xdc} /* double angle quotation mark */,
+ {0x00ac, 0xfe} /* sign */,
+ {0x00ae, 0xd2} /* sign */,
+ {0x00b0, 0xde} /* sign */,
+ {0x00b1, 0xa6} /* sign */,
+ {0x00b4, 0xa7} /* accent */,
+ {0x00b5, 0xd5} /* sign */,
+ {0x00b6, 0xd4} /* sign */,
+ {0x00b7, 0xae} /* dot */,
+ {0x00b8, 0xac} /* cedilla */,
+ {0x00b9, 0xb1} /* one */,
+ {0x00ba, 0xd7} /* ordinal indicator */,
+ {0x00bb, 0xdd} /* double angle quotation mark */,
+ {0x00bc, 0xba} /* fraction one quarter */,
+ {0x00bd, 0xaa} /* fraction one half */,
+ {0x00be, 0xbb} /* fraction three quarters */,
+ {0x00c7, 0xc3} /* capital letter c with cedilla */,
+ {0x00c8, 0xc4} /* capital letter e with grave */,
+ {0x00c9, 0xc5} /* capital letter e with acute */,
+ {0x00ca, 0xc6} /* capital letter e with circumflex */,
+ {0x00cb, 0xc7} /* capital letter e with diaeresis */,
+ {0x00cd, 0xc8} /* capital letter i with acute */,
+ {0x00ce, 0xc9} /* capital letter i with circumflex */,
+ {0x00cf, 0xca} /* capital letter i with diaeresis */,
+ {0x00d1, 0xcb} /* capital letter n with tilde */,
+ {0x00d3, 0xcc} /* capital letter o with acute */,
+ {0x00d4, 0xcd} /* capital letter o with circumflex */,
+ {0x00d9, 0xce} /* capital letter u with grave */,
+ {0x00da, 0xcf} /* capital letter u with acute */,
+ {0x00db, 0xd0} /* capital letter u with circumflex */,
+ {0x00dc, 0xd1} /* capital letter u with diaeresis */,
+ {0x00e7, 0xe3} /* small letter c with cedilla */,
+ {0x00e8, 0xe4} /* small letter e with grave */,
+ {0x00e9, 0xe5} /* small letter e with acute */,
+ {0x00ea, 0xe6} /* small letter e with circumflex */,
+ {0x00eb, 0xe7} /* small letter e with diaeresis */,
+ {0x00ed, 0xe8} /* small letter i with acute */,
+ {0x00ee, 0xe9} /* small letter i with circumflex */,
+ {0x00ef, 0xea} /* small letter i with diaeresis */,
+ {0x00f1, 0xeb} /* small letter n with tilde */,
+ {0x00f3, 0xec} /* small letter o with acute */,
+ {0x00f4, 0xed} /* small letter o with circumflex */,
+ {0x00f9, 0xee} /* small letter u with grave */,
+ {0x00fa, 0xef} /* small letter u with acute */,
+ {0x00fb, 0xf0} /* small letter u with circumflex */,
+ {0x00fc, 0xf1} /* small letter u with diaeresis */,
+ {0x2018, 0xd8} /* single quotation mark */,
+ {0x2019, 0xd9} /* single quotation mark */,
+ {0x201c, 0xda} /* double quotation mark */,
+ {0x201d, 0xdb} /* double quotation mark */,
+ {0x2070, 0xb0} /* digit zero */,
+ {0x2074, 0xb4} /* digit four */,
+ {0x2075, 0xb5} /* digit five */,
+ {0x2076, 0xb6} /* digit six */,
+ {0x2077, 0xb7} /* digit seven */,
+ {0x2078, 0xb8} /* digit eight */,
+ {0x2079, 0xb9} /* digit nine */,
+ {0x207a, 0xab} /* plus sign */,
+ {0x207b, 0xaf} /* minus */,
+ {0x207d, 0xa8} /* left parenthesis */,
+ {0x207e, 0xa9} /* right parenthesis */,
+ {0x21d0, 0xbc} /* double arrow */,
+ {0x2260, 0xbd} /* equal to */,
+ {0x2265, 0xbe} /* or equal to */,
+ {0x2500, 0xf3} /* drawings light horizontal */,
+ {0x2502, 0xf4} /* drawings light vertical */,
+ {0x250c, 0xf8} /* drawings light down and right */,
+ {0x2510, 0xf7} /* drawings light down and left */,
+ {0x2514, 0xf5} /* drawings light up and right */,
+ {0x2518, 0xf6} /* drawings light up and left */,
+ {0x251c, 0xf9} /* drawings light vertical and right */,
+ {0x2524, 0xfb} /* drawings light vertical and left */,
+ {0x252c, 0xfc} /* drawings light down and horizontal */,
+ {0x2534, 0xfa} /* drawings light up and horizontal */,
+ {0x253c, 0xfd} /* drawings light vertical and horizontal */,
+ {0x2588, 0xff} /* block */
+};
+
+/*
+#define cet_ucs4_to_csa_z243_4_1985_gr_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_csa_z243_4_1985_gr_extra[cet_ucs4_to_csa_z243_4_1985_gr_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_csa_z243_4_1985_gr = /* defined in cet.h */
+{
+ cet_cs_name_csa_z243_4_1985_gr, /* name of character set */
+ cet_cs_alias_csa_z243_4_1985_gr, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_csa_z243_4_1985_gr, /* char to UCS-4 value table */
+ cet_ucs4_ofs_csa_z243_4_1985_gr, /* first non standard character */
+ cet_ucs4_cnt_csa_z243_4_1985_gr, /* number of values in table */
+
+ cet_ucs4_to_csa_z243_4_1985_gr_links, /* UCS-4 to char links */
+ cet_ucs4_to_csa_z243_4_1985_gr_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int csa_z243_4_1985_gr_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x00a1, 0x00a8, 0x00a3, 0x00a2, 0x00a5, 0x00b1, 0x00b4,
+ 0x207d, 0x207e, 0x00bd, 0x207a, 0x00b8, 0x00ad, 0x00b7, 0x207b,
+ 0x2070, 0x00b9, 0x00b2, 0x00b3, 0x2074, 0x2075, 0x2076, 0x2077,
+ 0x2078, 0x2079, 0x00bc, 0x00be, 0x21d0, 0x2260, 0x2265, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c7, 0x00c8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00cd, 0x00ce, 0x00cf, 0x00d1, 0x00d3, 0x00d4, 0x00d9, 0x00da,
+ 0x00db, 0x00dc, 0x00ae, 0x00a7, 0x00b6, 0x00b5, 0x00aa, 0x00ba,
+ 0x2018, 0x2019, 0x201c, 0x201d, 0x00ab, 0x00bb, 0x00b0, 0x00a6,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e7, 0x00e8, 0x00e9, 0x00ea, 0x00eb,
+ 0x00ed, 0x00ee, 0x00ef, 0x00f1, 0x00f3, 0x00f4, 0x00f9, 0x00fa,
+ 0x00fb, 0x00fc, 0x00a9, 0x2500, 0x2502, 0x2514, 0x2518, 0x2510,
+ 0x250c, 0x251c, 0x2534, 0x2524, 0x252c, 0x253c, 0x00ac, 0x2588
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CSN_369103" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef csn_369103_h
+#define csn_369103_h
+
+#define cet_cs_name_csn_369103 "CSN_369103"
+
+const char *cet_cs_alias_csn_369103[] =
+{
+ "CSN_369103", "iso-ir-139", "koi8l2", "KOI-8_L2",
+ NULL
+};
+
+#define cet_ucs4_ofs_csn_369103 36
+#define cet_ucs4_cnt_csn_369103 220
+
+const int cet_ucs4_map_csn_369103[cet_ucs4_cnt_csn_369103] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b,
+ 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b,
+ 0x007c, 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x009c, 0x009d, 0x009e, 0x009f, 0x00a0, 0x0104, 0x02d8, 0x0141,
+ 0x0024, 0x013d, 0x015a, 0x00a7, 0x00a8, 0x0160, 0x015e, 0x0164,
+ 0x0179, 0x00ad, 0x017d, 0x017b, 0x00b0, 0x0105, 0x02db, 0x0142,
+ 0x00b4, 0x013e, 0x015b, 0x02c7, 0x00b8, 0x0161, 0x015f, 0x0165,
+ 0x017a, 0x02dd, 0x017e, 0x017c, 0x0154, 0x00c1, 0x00c2, 0x0102,
+ 0x00c4, 0x0139, 0x0106, 0x00c7, 0x010c, 0x00c9, 0x0118, 0x00cb,
+ 0x011a, 0x00cd, 0x00ce, 0x010e, 0x0110, 0x0143, 0x0147, 0x00d3,
+ 0x00d4, 0x0150, 0x00d6, 0x00d7, 0x0158, 0x016e, 0x00da, 0x0170,
+ 0x00dc, 0x00dd, 0x0162, 0x00df, 0x0155, 0x00e1, 0x00e2, 0x0103,
+ 0x00e4, 0x013a, 0x0107, 0x00e7, 0x010d, 0x00e9, 0x0119, 0x00eb,
+ 0x011b, 0x00ed, 0x00ee, 0x010f, 0x0111, 0x0144, 0x0148, 0x00f3,
+ 0x00f4, 0x0151, 0x00f6, 0x00f7, 0x0159, 0x016f, 0x00fa, 0x0171,
+ 0x00fc, 0x00fd, 0x0163, 0x02d9
+};
+
+#define cet_ucs4_to_csn_369103_ct 59
+
+const cet_ucs4_link_t cet_ucs4_to_csn_369103_links[cet_ucs4_to_csn_369103_ct] =
+{
+ {0x0024, 0xa4} /* sign */,
+ {0x00a4, 0x24} /* sign */,
+ {0x0102, 0xc3} /* capital letter a with breve */,
+ {0x0103, 0xe3} /* small letter a with breve */,
+ {0x0104, 0xa1} /* capital letter a with ogonek */,
+ {0x0105, 0xb1} /* small letter a with ogonek */,
+ {0x0106, 0xc6} /* capital letter c with acute */,
+ {0x0107, 0xe6} /* small letter c with acute */,
+ {0x010c, 0xc8} /* capital letter c with caron */,
+ {0x010d, 0xe8} /* small letter c with caron */,
+ {0x010e, 0xcf} /* capital letter d with caron */,
+ {0x010f, 0xef} /* small letter d with caron */,
+ {0x0110, 0xd0} /* capital letter d with stroke */,
+ {0x0111, 0xf0} /* small letter d with stroke */,
+ {0x0118, 0xca} /* capital letter e with ogonek */,
+ {0x0119, 0xea} /* small letter e with ogonek */,
+ {0x011a, 0xcc} /* capital letter e with caron */,
+ {0x011b, 0xec} /* small letter e with caron */,
+ {0x0139, 0xc5} /* capital letter l with acute */,
+ {0x013a, 0xe5} /* small letter l with acute */,
+ {0x013d, 0xa5} /* capital letter l with caron */,
+ {0x013e, 0xb5} /* small letter l with caron */,
+ {0x0141, 0xa3} /* capital letter l with stroke */,
+ {0x0142, 0xb3} /* small letter l with stroke */,
+ {0x0143, 0xd1} /* capital letter n with acute */,
+ {0x0144, 0xf1} /* small letter n with acute */,
+ {0x0147, 0xd2} /* capital letter n with caron */,
+ {0x0148, 0xf2} /* small letter n with caron */,
+ {0x0150, 0xd5} /* capital letter o with double acute */,
+ {0x0151, 0xf5} /* small letter o with double acute */,
+ {0x0154, 0xc0} /* capital letter r with acute */,
+ {0x0155, 0xe0} /* small letter r with acute */,
+ {0x0158, 0xd8} /* capital letter r with caron */,
+ {0x0159, 0xf8} /* small letter r with caron */,
+ {0x015a, 0xa6} /* capital letter s with acute */,
+ {0x015b, 0xb6} /* small letter s with acute */,
+ {0x015e, 0xaa} /* capital letter s with cedilla */,
+ {0x015f, 0xba} /* small letter s with cedilla */,
+ {0x0160, 0xa9} /* capital letter s with caron */,
+ {0x0161, 0xb9} /* small letter s with caron */,
+ {0x0162, 0xde} /* capital letter t with cedilla */,
+ {0x0163, 0xfe} /* small letter t with cedilla */,
+ {0x0164, 0xab} /* capital letter t with caron */,
+ {0x0165, 0xbb} /* small letter t with caron */,
+ {0x016e, 0xd9} /* capital letter u with ring above */,
+ {0x016f, 0xf9} /* small letter u with ring above */,
+ {0x0170, 0xdb} /* capital letter u with double acute */,
+ {0x0171, 0xfb} /* small letter u with double acute */,
+ {0x0179, 0xac} /* capital letter z with acute */,
+ {0x017a, 0xbc} /* small letter z with acute */,
+ {0x017b, 0xaf} /* capital letter z with dot above */,
+ {0x017c, 0xbf} /* small letter z with dot above */,
+ {0x017d, 0xae} /* capital letter z with caron */,
+ {0x017e, 0xbe} /* small letter z with caron */,
+ {0x02c7, 0xb7} /* caron */,
+ {0x02d8, 0xa2} /* breve */,
+ {0x02d9, 0xff} /* above */,
+ {0x02db, 0xb2} /* ogonek */,
+ {0x02dd, 0xbd} /* acute accent */
+};
+
+/*
+#define cet_ucs4_to_csn_369103_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_csn_369103_extra[cet_ucs4_to_csn_369103_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_csn_369103 = /* defined in cet.h */
+{
+ cet_cs_name_csn_369103, /* name of character set */
+ cet_cs_alias_csn_369103, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_csn_369103, /* char to UCS-4 value table */
+ cet_ucs4_ofs_csn_369103, /* first non standard character */
+ cet_ucs4_cnt_csn_369103, /* number of values in table */
+
+ cet_ucs4_to_csn_369103_links, /* UCS-4 to char links */
+ cet_ucs4_to_csn_369103_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int csn_369103_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x0104, 0x02d8, 0x0141, 0x0024, 0x013d, 0x015a, 0x00a7,
+ 0x00a8, 0x0160, 0x015e, 0x0164, 0x0179, 0x00ad, 0x017d, 0x017b,
+ 0x00b0, 0x0105, 0x02db, 0x0142, 0x00b4, 0x013e, 0x015b, 0x02c7,
+ 0x00b8, 0x0161, 0x015f, 0x0165, 0x017a, 0x02dd, 0x017e, 0x017c,
+ 0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7,
+ 0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e,
+ 0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7,
+ 0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df,
+ 0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7,
+ 0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f,
+ 0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7,
+ 0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "CWI" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef cwi_h
+#define cwi_h
+
+#define cet_cs_name_cwi "CWI"
+
+const char *cet_cs_alias_cwi[] =
+{
+ "CWI", "cp-hu", "CWI-2", NULL
+};
+
+#define cet_ucs4_ofs_cwi 128
+#define cet_ucs4_cnt_cwi 128
+
+const int cet_ucs4_map_cwi[cet_ucs4_cnt_cwi] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00cd, 0x00c4, 0x00c1,
+ 0x00c9, 0x00e6, 0x00c6, 0x0151, 0x00f6, 0x00d3, 0x0171, 0x00da,
+ 0x0170, 0x00d6, 0x00dc, 0x00a2, 0x00a3, 0x00a5, 0x20a7, 0xe01f,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x0150,
+ 0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x03b2, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x03bc, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x2205, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x2218, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_cwi_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_cwi_links[cet_ucs4_to_cwi_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a1, 0xad} /* exclamation mark */,
+ {0x00a2, 0x9b} /* sign */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00a5, 0x9d} /* sign */,
+ {0x00aa, 0xa6} /* ordinal indicator */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b7, 0xf9} /* dot */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00bf, 0xa8} /* question mark */,
+ {0x00c1, 0x8f} /* capital letter a with acute */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c6, 0x92} /* capital letter ae */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00cd, 0x8d} /* capital letter i with acute */,
+ {0x00d1, 0xa5} /* capital letter n with tilde */,
+ {0x00d3, 0x95} /* capital letter o with acute */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00da, 0x97} /* capital letter u with acute */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e5, 0x86} /* small letter a with ring above */,
+ {0x00e6, 0x91} /* small letter ae */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00ee, 0x8c} /* small letter i with circumflex */,
+ {0x00ef, 0x8b} /* small letter i with diaeresis */,
+ {0x00f1, 0xa4} /* small letter n with tilde */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x0150, 0xa7} /* capital letter o with double acute */,
+ {0x0151, 0x93} /* small letter o with double acute */,
+ {0x0170, 0x98} /* capital letter u with double acute */,
+ {0x0171, 0x96} /* small letter u with double acute */,
+ {0x0393, 0xe2} /* capital letter gamma */,
+ {0x0398, 0xe9} /* capital letter theta */,
+ {0x03a3, 0xe4} /* capital letter sigma */,
+ {0x03a6, 0xe8} /* capital letter phi */,
+ {0x03a9, 0xea} /* capital letter omega */,
+ {0x03b1, 0xe0} /* small letter alpha */,
+ {0x03b2, 0xe1} /* small letter beta */,
+ {0x03b4, 0xeb} /* small letter delta */,
+ {0x03b5, 0xee} /* small letter epsilon */,
+ {0x03bc, 0xe6} /* small letter mu */,
+ {0x03c0, 0xe3} /* small letter pi */,
+ {0x03c3, 0xe5} /* small letter sigma */,
+ {0x03c4, 0xe7} /* small letter tau */,
+ {0x2022, 0xfa} /* puce */,
+ {0x207f, 0xfc} /* latin small letter n */,
+ {0x20a7, 0x9e} /* sign */,
+ {0x2205, 0xed} /* set */,
+ {0x2218, 0xf8} /* operator */,
+ {0x221a, 0xfb} /* root */,
+ {0x221e, 0xec} /* infinity */,
+ {0x2229, 0xef} /* intersection */,
+ {0x2248, 0xf7} /* equal to */,
+ {0x2261, 0xf0} /* to */,
+ {0x2264, 0xf3} /* or equal to */,
+ {0x2265, 0xf2} /* or equal to */,
+ {0x2310, 0xa9} /* not sign */,
+ {0x2320, 0xf4} /* half integral */,
+ {0x2321, 0xf5} /* half integral */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2552, 0xd5} /* drawings down light and right heavy */,
+ {0x2553, 0xd6} /* drawings down heavy and right light */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2555, 0xb8} /* drawings down light and left heavy */,
+ {0x2556, 0xb7} /* drawings down heavy and left light */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x2558, 0xd4} /* drawings up light and right heavy */,
+ {0x2559, 0xd3} /* drawings up heavy and right light */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255b, 0xbe} /* drawings up light and left heavy */,
+ {0x255c, 0xbd} /* drawings up heavy and left light */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x255e, 0xc6} /* drawings vertical light and right heavy */,
+ {0x255f, 0xc7} /* drawings vertical heavy and right light */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2561, 0xb5} /* drawings vertical light and left heavy */,
+ {0x2562, 0xb6} /* drawings vertical heavy and left light */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2564, 0xd1} /* drawings down light and horizontal heavy */,
+ {0x2565, 0xd2} /* drawings down heavy and horizontal light */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2567, 0xcf} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xd0} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256a, 0xd8} /* drawings vertical light and horizontal heavy */,
+ {0x256b, 0xd7} /* drawings vertical heavy and horizontal light */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x258c, 0xdd} /* half block */,
+ {0x2590, 0xde} /* half block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */,
+ {0xe01f, 0x9f} /* guilder sign (ibm437 159) */
+};
+
+/*
+#define cet_ucs4_to_cwi_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_cwi_extra[cet_ucs4_to_cwi_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_cwi = /* defined in cet.h */
+{
+ cet_cs_name_cwi, /* name of character set */
+ cet_cs_alias_cwi, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_cwi, /* char to UCS-4 value table */
+ cet_ucs4_ofs_cwi, /* first non standard character */
+ cet_ucs4_cnt_cwi, /* number of values in table */
+
+ cet_ucs4_to_cwi_links, /* UCS-4 to char links */
+ cet_ucs4_to_cwi_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int cwi_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00cd, 0x00c4, 0x00c1,
+ 0x00c9, 0x00e6, 0x00c6, 0x0151, 0x00f6, 0x00d3, 0x0171, 0x00da,
+ 0x0170, 0x00d6, 0x00dc, 0x00a2, 0x00a3, 0x00a5, 0x20a7, 0xe01f,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x0150,
+ 0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x03b2, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x03bc, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x2205, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x2218, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "DEC-MCS" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef dec_mcs_h
+#define dec_mcs_h
+
+#define cet_cs_name_dec_mcs "DEC-MCS"
+
+const char *cet_cs_alias_dec_mcs[] =
+{
+ "DEC-MCS", "dec", NULL
+};
+
+#define cet_ucs4_ofs_dec_mcs 160
+#define cet_ucs4_cnt_dec_mcs 94
+
+const int cet_ucs4_map_dec_mcs[cet_ucs4_cnt_dec_mcs] =
+{
+ -1, 0x00a1, 0x00a2, 0x00a3, -1, 0x00a5, -1, 0x00a7,
+ 0x00a4, 0x00a9, 0x00aa, 0x00ab, -1, -1, -1, -1,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, -1, 0x00b5, 0x00b6, 0x00b7,
+ -1, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, -1, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ -1, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x0152,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0178, -1, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ -1, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x0153,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00ff
+};
+
+#define cet_ucs4_to_dec_mcs_ct 5
+
+const cet_ucs4_link_t cet_ucs4_to_dec_mcs_links[cet_ucs4_to_dec_mcs_ct] =
+{
+ {0x00a4, 0xa8} /* sign */,
+ {0x00ff, 0xfd} /* small letter y with diaeresis */,
+ {0x0152, 0xd7} /* capital ligature oe */,
+ {0x0153, 0xf7} /* small ligature oe */,
+ {0x0178, 0xdd} /* capital letter y with diaeresis */
+};
+
+/*
+#define cet_ucs4_to_dec_mcs_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_dec_mcs_extra[cet_ucs4_to_dec_mcs_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_dec_mcs = /* defined in cet.h */
+{
+ cet_cs_name_dec_mcs, /* name of character set */
+ cet_cs_alias_dec_mcs, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_dec_mcs, /* char to UCS-4 value table */
+ cet_ucs4_ofs_dec_mcs, /* first non standard character */
+ cet_ucs4_cnt_dec_mcs, /* number of values in table */
+
+ cet_ucs4_to_dec_mcs_links, /* UCS-4 to char links */
+ cet_ucs4_to_dec_mcs_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int dec_mcs_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ -1, 0x00a1, 0x00a2, 0x00a3, -1, 0x00a5, -1, 0x00a7,
+ 0x00a4, 0x00a9, 0x00aa, 0x00ab, -1, -1, -1, -1,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, -1, 0x00b5, 0x00b6, 0x00b7,
+ -1, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, -1, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ -1, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x0152,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0178, -1, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ -1, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x0153,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00ff, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "DIN_66003" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef din_66003_h
+#define din_66003_h
+
+#define cet_cs_name_din_66003 "DIN_66003"
+
+const char *cet_cs_alias_din_66003[] =
+{
+ "DIN_66003", "de", "ISO646-DE", "iso-ir-21",
+ NULL
+};
+
+#define cet_ucs4_ofs_din_66003 64
+#define cet_ucs4_cnt_din_66003 64
+
+const int cet_ucs4_map_din_66003[cet_ucs4_cnt_din_66003] =
+{
+ 0x00a7, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c4, 0x00d6, 0x00dc, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e4, 0x00f6, 0x00fc, 0x00df, 0x007f
+};
+
+#define cet_ucs4_to_din_66003_ct 8
+
+const cet_ucs4_link_t cet_ucs4_to_din_66003_links[cet_ucs4_to_din_66003_ct] =
+{
+ {0x00a7, 0x40} /* sign */,
+ {0x00c4, 0x5b} /* capital letter a with diaeresis */,
+ {0x00d6, 0x5c} /* capital letter o with diaeresis */,
+ {0x00dc, 0x5d} /* capital letter u with diaeresis */,
+ {0x00df, 0x7e} /* small letter sharp s (german) */,
+ {0x00e4, 0x7b} /* small letter a with diaeresis */,
+ {0x00f6, 0x7c} /* small letter o with diaeresis */,
+ {0x00fc, 0x7d} /* small letter u with diaeresis */
+};
+
+/*
+#define cet_ucs4_to_din_66003_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_din_66003_extra[cet_ucs4_to_din_66003_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_din_66003 = /* defined in cet.h */
+{
+ cet_cs_name_din_66003, /* name of character set */
+ cet_cs_alias_din_66003, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_din_66003, /* char to UCS-4 value table */
+ cet_ucs4_ofs_din_66003, /* first non standard character */
+ cet_ucs4_cnt_din_66003, /* number of values in table */
+
+ cet_ucs4_to_din_66003_links, /* UCS-4 to char links */
+ cet_ucs4_to_din_66003_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int din_66003_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00a7, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c4, 0x00d6, 0x00dc, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e4, 0x00f6, 0x00fc, 0x00df, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "DS_2089" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ds_2089_h
+#define ds_2089_h
+
+#define cet_cs_name_ds_2089 "DS_2089"
+
+const char *cet_cs_alias_ds_2089[] =
+{
+ "DS_2089", "dk", "DS2089", "ISO646-DK",
+ NULL
+};
+
+#define cet_ucs4_ofs_ds_2089 91
+#define cet_ucs4_cnt_ds_2089 37
+
+const int cet_ucs4_map_ds_2089[cet_ucs4_cnt_ds_2089] =
+{
+ 0x00c6, 0x00d8, 0x00c5, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x00e6, 0x00f8, 0x00e5, 0x007e, 0x007f
+};
+
+#define cet_ucs4_to_ds_2089_ct 6
+
+const cet_ucs4_link_t cet_ucs4_to_ds_2089_links[cet_ucs4_to_ds_2089_ct] =
+{
+ {0x00c5, 0x5d} /* capital letter a with ring above */,
+ {0x00c6, 0x5b} /* capital letter ae */,
+ {0x00d8, 0x5c} /* capital letter o with stroke */,
+ {0x00e5, 0x7d} /* small letter a with ring above */,
+ {0x00e6, 0x7b} /* small letter ae */,
+ {0x00f8, 0x7c} /* small letter o with stroke */
+};
+
+/*
+#define cet_ucs4_to_ds_2089_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ds_2089_extra[cet_ucs4_to_ds_2089_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ds_2089 = /* defined in cet.h */
+{
+ cet_cs_name_ds_2089, /* name of character set */
+ cet_cs_alias_ds_2089, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ds_2089, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ds_2089, /* first non standard character */
+ cet_ucs4_cnt_ds_2089, /* number of values in table */
+
+ cet_ucs4_to_ds_2089_links, /* UCS-4 to char links */
+ cet_ucs4_to_ds_2089_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ds_2089_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c6, 0x00d8, 0x00c5, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e6, 0x00f8, 0x00e5, 0x007e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ECMA-cyrillic" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ecma_cyrillic_h
+#define ecma_cyrillic_h
+
+#define cet_cs_name_ecma_cyrillic "ECMA-cyrillic"
+
+const char *cet_cs_alias_ecma_cyrillic[] =
+{
+ "ECMA-cyrillic", "ECMA-113", "ECMA-113:1986", "iso-ir-111",
+ NULL
+};
+
+#define cet_ucs4_ofs_ecma_cyrillic 161
+#define cet_ucs4_cnt_ecma_cyrillic 95
+
+const int cet_ucs4_map_ecma_cyrillic[cet_ucs4_cnt_ecma_cyrillic] =
+{
+ 0x0452, 0x0453, 0x0451, 0x0454, 0x0455, 0x0456, 0x0457, 0x0458,
+ 0x0459, 0x045a, 0x045b, 0x045c, 0x00ad, 0x045e, 0x045f, 0x2116,
+ 0x0402, 0x0403, 0x0401, 0x0404, 0x0405, 0x0406, 0x0407, 0x0408,
+ 0x0409, 0x040a, 0x040b, 0x040c, 0x00a4, 0x040e, 0x040f, 0x044e,
+ 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433, 0x0445,
+ 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+ 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432, 0x044c,
+ 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a, 0x042e,
+ 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413, 0x0425,
+ 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+ 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412, 0x042c,
+ 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a
+};
+
+#define cet_ucs4_to_ecma_cyrillic_ct 94
+
+const cet_ucs4_link_t cet_ucs4_to_ecma_cyrillic_links[cet_ucs4_to_ecma_cyrillic_ct] =
+{
+ {0x00a4, 0xbd} /* sign */,
+ {0x0401, 0xb3} /* capital letter io */,
+ {0x0402, 0xb1} /* capital letter dje (serbocroatian) */,
+ {0x0403, 0xb2} /* capital letter gje (macedonian) */,
+ {0x0404, 0xb4} /* capital letter ukrainian ie */,
+ {0x0405, 0xb5} /* capital letter dze (macedonian) */,
+ {0x0406, 0xb6} /* capital letter byelorussian-ukrainian i */,
+ {0x0407, 0xb7} /* capital letter yi (ukrainian) */,
+ {0x0408, 0xb8} /* capital letter je */,
+ {0x0409, 0xb9} /* capital letter lje */,
+ {0x040a, 0xba} /* capital letter nje */,
+ {0x040b, 0xbb} /* capital letter tshe (serbocroatian) */,
+ {0x040c, 0xbc} /* capital letter kje (macedonian) */,
+ {0x040e, 0xbe} /* capital letter short u (byelorussian) */,
+ {0x040f, 0xbf} /* capital letter dzhe */,
+ {0x0410, 0xe1} /* capital letter a */,
+ {0x0411, 0xe2} /* capital letter be */,
+ {0x0412, 0xf7} /* capital letter ve */,
+ {0x0413, 0xe7} /* capital letter ghe */,
+ {0x0414, 0xe4} /* capital letter de */,
+ {0x0415, 0xe5} /* capital letter ie */,
+ {0x0416, 0xf6} /* capital letter zhe */,
+ {0x0417, 0xfa} /* capital letter ze */,
+ {0x0418, 0xe9} /* capital letter i */,
+ {0x0419, 0xea} /* capital letter short i */,
+ {0x041a, 0xeb} /* capital letter ka */,
+ {0x041b, 0xec} /* capital letter el */,
+ {0x041c, 0xed} /* capital letter em */,
+ {0x041d, 0xee} /* capital letter en */,
+ {0x041e, 0xef} /* capital letter o */,
+ {0x041f, 0xf0} /* capital letter pe */,
+ {0x0420, 0xf2} /* capital letter er */,
+ {0x0421, 0xf3} /* capital letter es */,
+ {0x0422, 0xf4} /* capital letter te */,
+ {0x0423, 0xf5} /* capital letter u */,
+ {0x0424, 0xe6} /* capital letter ef */,
+ {0x0425, 0xe8} /* capital letter ha */,
+ {0x0426, 0xe3} /* capital letter tse */,
+ {0x0427, 0xfe} /* capital letter che */,
+ {0x0428, 0xfb} /* capital letter sha */,
+ {0x0429, 0xfd} /* capital letter shcha */,
+ {0x042a, 0xff} /* capital letter hard sign */,
+ {0x042b, 0xf9} /* capital letter yeru */,
+ {0x042c, 0xf8} /* capital letter soft sign */,
+ {0x042d, 0xfc} /* capital letter e */,
+ {0x042e, 0xe0} /* capital letter yu */,
+ {0x042f, 0xf1} /* capital letter ya */,
+ {0x0430, 0xc1} /* small letter a */,
+ {0x0431, 0xc2} /* small letter be */,
+ {0x0432, 0xd7} /* small letter ve */,
+ {0x0433, 0xc7} /* small letter ghe */,
+ {0x0434, 0xc4} /* small letter de */,
+ {0x0435, 0xc5} /* small letter ie */,
+ {0x0436, 0xd6} /* small letter zhe */,
+ {0x0437, 0xda} /* small letter ze */,
+ {0x0438, 0xc9} /* small letter i */,
+ {0x0439, 0xca} /* small letter short i */,
+ {0x043a, 0xcb} /* small letter ka */,
+ {0x043b, 0xcc} /* small letter el */,
+ {0x043c, 0xcd} /* small letter em */,
+ {0x043d, 0xce} /* small letter en */,
+ {0x043e, 0xcf} /* small letter o */,
+ {0x043f, 0xd0} /* small letter pe */,
+ {0x0440, 0xd2} /* small letter er */,
+ {0x0441, 0xd3} /* small letter es */,
+ {0x0442, 0xd4} /* small letter te */,
+ {0x0443, 0xd5} /* small letter u */,
+ {0x0444, 0xc6} /* small letter ef */,
+ {0x0445, 0xc8} /* small letter ha */,
+ {0x0446, 0xc3} /* small letter tse */,
+ {0x0447, 0xde} /* small letter che */,
+ {0x0448, 0xdb} /* small letter sha */,
+ {0x0449, 0xdd} /* small letter shcha */,
+ {0x044a, 0xdf} /* small letter hard sign */,
+ {0x044b, 0xd9} /* small letter yeru */,
+ {0x044c, 0xd8} /* small letter soft sign */,
+ {0x044d, 0xdc} /* small letter e */,
+ {0x044e, 0xc0} /* small letter yu */,
+ {0x044f, 0xd1} /* small letter ya */,
+ {0x0451, 0xa3} /* small letter io */,
+ {0x0452, 0xa1} /* small letter dje (serbocroatian) */,
+ {0x0453, 0xa2} /* small letter gje (macedonian) */,
+ {0x0454, 0xa4} /* small letter ukrainian ie */,
+ {0x0455, 0xa5} /* small letter dze (macedonian) */,
+ {0x0456, 0xa6} /* small letter byelorussian-ukrainian i */,
+ {0x0457, 0xa7} /* small letter yi (ukrainian) */,
+ {0x0458, 0xa8} /* small letter je */,
+ {0x0459, 0xa9} /* small letter lje */,
+ {0x045a, 0xaa} /* small letter nje */,
+ {0x045b, 0xab} /* small letter tshe (serbocroatian) */,
+ {0x045c, 0xac} /* small letter kje (macedonian) */,
+ {0x045e, 0xae} /* small letter short u (byelorussian) */,
+ {0x045f, 0xaf} /* small letter dzhe */,
+ {0x2116, 0xb0} /* sign */
+};
+
+/*
+#define cet_ucs4_to_ecma_cyrillic_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ecma_cyrillic_extra[cet_ucs4_to_ecma_cyrillic_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ecma_cyrillic = /* defined in cet.h */
+{
+ cet_cs_name_ecma_cyrillic, /* name of character set */
+ cet_cs_alias_ecma_cyrillic, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ecma_cyrillic, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ecma_cyrillic, /* first non standard character */
+ cet_ucs4_cnt_ecma_cyrillic, /* number of values in table */
+
+ cet_ucs4_to_ecma_cyrillic_links, /* UCS-4 to char links */
+ cet_ucs4_to_ecma_cyrillic_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ecma_cyrillic_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x0452, 0x0453, 0x0451, 0x0454, 0x0455, 0x0456, 0x0457,
+ 0x0458, 0x0459, 0x045a, 0x045b, 0x045c, 0x00ad, 0x045e, 0x045f,
+ 0x2116, 0x0402, 0x0403, 0x0401, 0x0404, 0x0405, 0x0406, 0x0407,
+ 0x0408, 0x0409, 0x040a, 0x040b, 0x040c, 0x00a4, 0x040e, 0x040f,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+ 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ES" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef es_h
+#define es_h
+
+#define cet_cs_name_es "ES"
+
+const char *cet_cs_alias_es[] =
+{
+ "ES", "ISO646-ES", "iso-ir-17", NULL
+};
+
+#define cet_ucs4_ofs_es 35
+#define cet_ucs4_cnt_es 93
+
+const int cet_ucs4_map_es[cet_ucs4_cnt_es] =
+{
+ 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a,
+ 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032,
+ 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a,
+ 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x00a7, 0x0041, 0x0042,
+ 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+ 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+ 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+ 0x00a1, 0x00d1, 0x00bf, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x00b0, 0x00f1, 0x00e7, 0x007e, 0x007f
+};
+
+#define cet_ucs4_to_es_ct 8
+
+const cet_ucs4_link_t cet_ucs4_to_es_links[cet_ucs4_to_es_ct] =
+{
+ {0x00a1, 0x5b} /* exclamation mark */,
+ {0x00a3, 0x23} /* sign */,
+ {0x00a7, 0x40} /* sign */,
+ {0x00b0, 0x7b} /* sign */,
+ {0x00bf, 0x5d} /* question mark */,
+ {0x00d1, 0x5c} /* capital letter n with tilde */,
+ {0x00e7, 0x7d} /* small letter c with cedilla */,
+ {0x00f1, 0x7c} /* small letter n with tilde */
+};
+
+/*
+#define cet_ucs4_to_es_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_es_extra[cet_ucs4_to_es_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_es = /* defined in cet.h */
+{
+ cet_cs_name_es, /* name of character set */
+ cet_cs_alias_es, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_es, /* char to UCS-4 value table */
+ cet_ucs4_ofs_es, /* first non standard character */
+ cet_ucs4_cnt_es, /* number of values in table */
+
+ cet_ucs4_to_es_links, /* UCS-4 to char links */
+ cet_ucs4_to_es_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int es_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00a7, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00a1, 0x00d1, 0x00bf, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00b0, 0x00f1, 0x00e7, 0x007e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ES2" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef es2_h
+#define es2_h
+
+#define cet_cs_name_es2 "ES2"
+
+const char *cet_cs_alias_es2[] =
+{
+ "ES2", "ISO646-ES2", "iso-ir-85", NULL
+};
+
+#define cet_ucs4_ofs_es2 64
+#define cet_ucs4_cnt_es2 64
+
+const int cet_ucs4_map_es2[cet_ucs4_cnt_es2] =
+{
+ 0x2022, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00a1, 0x00d1, 0x00c7, 0x00bf, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00b4, 0x00f1, 0x00e7, 0x00a8, 0x007f
+};
+
+#define cet_ucs4_to_es2_ct 9
+
+const cet_ucs4_link_t cet_ucs4_to_es2_links[cet_ucs4_to_es2_ct] =
+{
+ {0x00a1, 0x5b} /* exclamation mark */,
+ {0x00a8, 0x7e} /* diaeresis */,
+ {0x00b4, 0x7b} /* accent */,
+ {0x00bf, 0x5e} /* question mark */,
+ {0x00c7, 0x5d} /* capital letter c with cedilla */,
+ {0x00d1, 0x5c} /* capital letter n with tilde */,
+ {0x00e7, 0x7d} /* small letter c with cedilla */,
+ {0x00f1, 0x7c} /* small letter n with tilde */,
+ {0x2022, 0x40} /* puce */
+};
+
+/*
+#define cet_ucs4_to_es2_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_es2_extra[cet_ucs4_to_es2_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_es2 = /* defined in cet.h */
+{
+ cet_cs_name_es2, /* name of character set */
+ cet_cs_alias_es2, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_es2, /* char to UCS-4 value table */
+ cet_ucs4_ofs_es2, /* first non standard character */
+ cet_ucs4_cnt_es2, /* number of values in table */
+
+ cet_ucs4_to_es2_links, /* UCS-4 to char links */
+ cet_ucs4_to_es2_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int es2_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x2022, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00a1, 0x00d1, 0x00c7, 0x00bf, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00b4, 0x00f1, 0x00e7, 0x00a8, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "GB_1988-80" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef gb_1988_80_h
+#define gb_1988_80_h
+
+#define cet_cs_name_gb_1988_80 "GB_1988-80"
+
+const char *cet_cs_alias_gb_1988_80[] =
+{
+ "GB_1988-80", "cn", "csISO57GB1988", "ISO646-CN",
+ "iso-ir-57", NULL
+};
+
+#define cet_ucs4_ofs_gb_1988_80 36
+#define cet_ucs4_cnt_gb_1988_80 92
+
+const int cet_ucs4_map_gb_1988_80[cet_ucs4_cnt_gb_1988_80] =
+{
+ 0x00a5, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b,
+ 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b,
+ 0x007c, 0x007d, 0x203e, 0x007f
+};
+
+#define cet_ucs4_to_gb_1988_80_ct 2
+
+const cet_ucs4_link_t cet_ucs4_to_gb_1988_80_links[cet_ucs4_to_gb_1988_80_ct] =
+{
+ {0x00a5, 0x24} /* sign */,
+ {0x203e, 0x7e} /* overline */
+};
+
+/*
+#define cet_ucs4_to_gb_1988_80_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_gb_1988_80_extra[cet_ucs4_to_gb_1988_80_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_gb_1988_80 = /* defined in cet.h */
+{
+ cet_cs_name_gb_1988_80, /* name of character set */
+ cet_cs_alias_gb_1988_80, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_gb_1988_80, /* char to UCS-4 value table */
+ cet_ucs4_ofs_gb_1988_80, /* first non standard character */
+ cet_ucs4_cnt_gb_1988_80, /* number of values in table */
+
+ cet_ucs4_to_gb_1988_80_links, /* UCS-4 to char links */
+ cet_ucs4_to_gb_1988_80_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int gb_1988_80_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a5, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x203e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "GOST_19768-87" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef gost_19768_87_h
+#define gost_19768_87_h
+
+#define cet_cs_name_gost_19768_87 "GOST_19768-87"
+
+const char *cet_cs_alias_gost_19768_87[] =
+{
+ "GOST_19768-87", "iso-ir-153", "ST_SEV_358-88", NULL
+};
+
+#define cet_ucs4_ofs_gost_19768_87 161
+#define cet_ucs4_cnt_gost_19768_87 81
+
+const int cet_ucs4_map_gost_19768_87[cet_ucs4_cnt_gost_19768_87] =
+{
+ 0x0401, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 0x00ad, -1, -1, 0x0410,
+ 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417, 0x0418,
+ 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 0x0420,
+ 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428,
+ 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f, 0x0430,
+ 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437, 0x0438,
+ 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f, 0x0440,
+ 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448,
+ 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f, -1,
+ 0x0451
+};
+
+#define cet_ucs4_to_gost_19768_87_ct 66
+
+const cet_ucs4_link_t cet_ucs4_to_gost_19768_87_links[cet_ucs4_to_gost_19768_87_ct] =
+{
+ {0x0401, 0xa1} /* capital letter io */,
+ {0x0410, 0xb0} /* capital letter a */,
+ {0x0411, 0xb1} /* capital letter be */,
+ {0x0412, 0xb2} /* capital letter ve */,
+ {0x0413, 0xb3} /* capital letter ghe */,
+ {0x0414, 0xb4} /* capital letter de */,
+ {0x0415, 0xb5} /* capital letter ie */,
+ {0x0416, 0xb6} /* capital letter zhe */,
+ {0x0417, 0xb7} /* capital letter ze */,
+ {0x0418, 0xb8} /* capital letter i */,
+ {0x0419, 0xb9} /* capital letter short i */,
+ {0x041a, 0xba} /* capital letter ka */,
+ {0x041b, 0xbb} /* capital letter el */,
+ {0x041c, 0xbc} /* capital letter em */,
+ {0x041d, 0xbd} /* capital letter en */,
+ {0x041e, 0xbe} /* capital letter o */,
+ {0x041f, 0xbf} /* capital letter pe */,
+ {0x0420, 0xc0} /* capital letter er */,
+ {0x0421, 0xc1} /* capital letter es */,
+ {0x0422, 0xc2} /* capital letter te */,
+ {0x0423, 0xc3} /* capital letter u */,
+ {0x0424, 0xc4} /* capital letter ef */,
+ {0x0425, 0xc5} /* capital letter ha */,
+ {0x0426, 0xc6} /* capital letter tse */,
+ {0x0427, 0xc7} /* capital letter che */,
+ {0x0428, 0xc8} /* capital letter sha */,
+ {0x0429, 0xc9} /* capital letter shcha */,
+ {0x042a, 0xca} /* capital letter hard sign */,
+ {0x042b, 0xcb} /* capital letter yeru */,
+ {0x042c, 0xcc} /* capital letter soft sign */,
+ {0x042d, 0xcd} /* capital letter e */,
+ {0x042e, 0xce} /* capital letter yu */,
+ {0x042f, 0xcf} /* capital letter ya */,
+ {0x0430, 0xd0} /* small letter a */,
+ {0x0431, 0xd1} /* small letter be */,
+ {0x0432, 0xd2} /* small letter ve */,
+ {0x0433, 0xd3} /* small letter ghe */,
+ {0x0434, 0xd4} /* small letter de */,
+ {0x0435, 0xd5} /* small letter ie */,
+ {0x0436, 0xd6} /* small letter zhe */,
+ {0x0437, 0xd7} /* small letter ze */,
+ {0x0438, 0xd8} /* small letter i */,
+ {0x0439, 0xd9} /* small letter short i */,
+ {0x043a, 0xda} /* small letter ka */,
+ {0x043b, 0xdb} /* small letter el */,
+ {0x043c, 0xdc} /* small letter em */,
+ {0x043d, 0xdd} /* small letter en */,
+ {0x043e, 0xde} /* small letter o */,
+ {0x043f, 0xdf} /* small letter pe */,
+ {0x0440, 0xe0} /* small letter er */,
+ {0x0441, 0xe1} /* small letter es */,
+ {0x0442, 0xe2} /* small letter te */,
+ {0x0443, 0xe3} /* small letter u */,
+ {0x0444, 0xe4} /* small letter ef */,
+ {0x0445, 0xe5} /* small letter ha */,
+ {0x0446, 0xe6} /* small letter tse */,
+ {0x0447, 0xe7} /* small letter che */,
+ {0x0448, 0xe8} /* small letter sha */,
+ {0x0449, 0xe9} /* small letter shcha */,
+ {0x044a, 0xea} /* small letter hard sign */,
+ {0x044b, 0xeb} /* small letter yeru */,
+ {0x044c, 0xec} /* small letter soft sign */,
+ {0x044d, 0xed} /* small letter e */,
+ {0x044e, 0xee} /* small letter yu */,
+ {0x044f, 0xef} /* small letter ya */,
+ {0x0451, 0xf1} /* small letter io */
+};
+
+/*
+#define cet_ucs4_to_gost_19768_87_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_gost_19768_87_extra[cet_ucs4_to_gost_19768_87_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_gost_19768_87 = /* defined in cet.h */
+{
+ cet_cs_name_gost_19768_87, /* name of character set */
+ cet_cs_alias_gost_19768_87, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_gost_19768_87, /* char to UCS-4 value table */
+ cet_ucs4_ofs_gost_19768_87, /* first non standard character */
+ cet_ucs4_cnt_gost_19768_87, /* number of values in table */
+
+ cet_ucs4_to_gost_19768_87_links, /* UCS-4 to char links */
+ cet_ucs4_to_gost_19768_87_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int gost_19768_87_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x0401, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 0x00ad, -1, -1,
+ 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+ 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+ 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+ 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+ 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+ 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+ 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+ 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
+ -1, 0x0451, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "hp-roman8" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef hp_roman8_h
+#define hp_roman8_h
+
+#define cet_cs_name_hp_roman8 "hp-roman8"
+
+const char *cet_cs_alias_hp_roman8[] =
+{
+ "hp-roman8", "csHPRoman8", "r8", "roman8",
+ NULL
+};
+
+#define cet_ucs4_ofs_hp_roman8 161
+#define cet_ucs4_cnt_hp_roman8 94
+
+const int cet_ucs4_map_hp_roman8[cet_ucs4_cnt_hp_roman8] =
+{
+ 0x00c0, 0x00c2, 0x00c8, 0x00ca, 0x00cb, 0x00ce, 0x00cf, 0x00b4,
+ 0x02cb, 0x02c6, 0x00a8, 0x02dc, 0x00d9, 0x00db, 0x20a4, 0x00af,
+ 0x00dd, 0x00fd, 0x00b0, 0x00c7, 0x00e7, 0x00d1, 0x00f1, 0x00a1,
+ 0x00bf, 0x00a4, 0x00a3, 0x00a5, 0x00a7, 0x0192, 0x00a2, 0x00e2,
+ 0x00ea, 0x00f4, 0x00fb, 0x00e1, 0x00e9, 0x00f3, 0x00fa, 0x00e0,
+ 0x00e8, 0x00f2, 0x00f9, 0x00e4, 0x00eb, 0x00f6, 0x00fc, 0x00c5,
+ 0x00ee, 0x00d8, 0x00c6, 0x00e5, 0x00ed, 0x00f8, 0x00e6, 0x00c4,
+ 0x00ec, 0x00d6, 0x00dc, 0x00c9, 0x00ef, 0x00df, 0x00d4, 0x00c1,
+ 0x00c3, 0x00e3, 0x00d0, 0x00f0, 0x00cd, 0x00cc, 0x00d3, 0x00d2,
+ 0x00d5, 0x00f5, 0x0160, 0x0161, 0x00da, 0x0178, 0x00ff, 0x00de,
+ 0x00fe, 0x00b7, 0x00b5, 0x00b6, 0x00be, 0x2014, 0x00bc, 0x00bd,
+ 0x00aa, 0x00ba, 0x00ab, 0x25a0, 0x00bb, 0x00b1
+};
+
+#define cet_ucs4_to_hp_roman8_ct 94
+
+const cet_ucs4_link_t cet_ucs4_to_hp_roman8_links[cet_ucs4_to_hp_roman8_ct] =
+{
+ {0x00a1, 0xb8} /* exclamation mark */,
+ {0x00a2, 0xbf} /* sign */,
+ {0x00a3, 0xbb} /* sign */,
+ {0x00a4, 0xba} /* sign */,
+ {0x00a5, 0xbc} /* sign */,
+ {0x00a7, 0xbd} /* sign */,
+ {0x00a8, 0xab} /* diaeresis */,
+ {0x00aa, 0xf9} /* ordinal indicator */,
+ {0x00ab, 0xfb} /* double angle quotation mark */,
+ {0x00af, 0xb0} /* macron */,
+ {0x00b0, 0xb3} /* sign */,
+ {0x00b1, 0xfe} /* sign */,
+ {0x00b4, 0xa8} /* accent */,
+ {0x00b5, 0xf3} /* sign */,
+ {0x00b6, 0xf4} /* sign */,
+ {0x00b7, 0xf2} /* dot */,
+ {0x00ba, 0xfa} /* ordinal indicator */,
+ {0x00bb, 0xfd} /* double angle quotation mark */,
+ {0x00bc, 0xf7} /* fraction one quarter */,
+ {0x00bd, 0xf8} /* fraction one half */,
+ {0x00be, 0xf5} /* fraction three quarters */,
+ {0x00bf, 0xb9} /* question mark */,
+ {0x00c0, 0xa1} /* capital letter a with grave */,
+ {0x00c1, 0xe0} /* capital letter a with acute */,
+ {0x00c2, 0xa2} /* capital letter a with circumflex */,
+ {0x00c3, 0xe1} /* capital letter a with tilde */,
+ {0x00c4, 0xd8} /* capital letter a with diaeresis */,
+ {0x00c5, 0xd0} /* capital letter a with ring above */,
+ {0x00c6, 0xd3} /* capital letter ae */,
+ {0x00c7, 0xb4} /* capital letter c with cedilla */,
+ {0x00c8, 0xa3} /* capital letter e with grave */,
+ {0x00c9, 0xdc} /* capital letter e with acute */,
+ {0x00ca, 0xa4} /* capital letter e with circumflex */,
+ {0x00cb, 0xa5} /* capital letter e with diaeresis */,
+ {0x00cc, 0xe6} /* capital letter i with grave */,
+ {0x00cd, 0xe5} /* capital letter i with acute */,
+ {0x00ce, 0xa6} /* capital letter i with circumflex */,
+ {0x00cf, 0xa7} /* capital letter i with diaeresis */,
+ {0x00d0, 0xe3} /* capital letter eth (icelandic) */,
+ {0x00d1, 0xb6} /* capital letter n with tilde */,
+ {0x00d2, 0xe8} /* capital letter o with grave */,
+ {0x00d3, 0xe7} /* capital letter o with acute */,
+ {0x00d4, 0xdf} /* capital letter o with circumflex */,
+ {0x00d5, 0xe9} /* capital letter o with tilde */,
+ {0x00d6, 0xda} /* capital letter o with diaeresis */,
+ {0x00d8, 0xd2} /* capital letter o with stroke */,
+ {0x00d9, 0xad} /* capital letter u with grave */,
+ {0x00da, 0xed} /* capital letter u with acute */,
+ {0x00db, 0xae} /* capital letter u with circumflex */,
+ {0x00dc, 0xdb} /* capital letter u with diaeresis */,
+ {0x00dd, 0xb1} /* capital letter y with acute */,
+ {0x00de, 0xf0} /* capital letter thorn (icelandic) */,
+ {0x00df, 0xde} /* small letter sharp s (german) */,
+ {0x00e0, 0xc8} /* small letter a with grave */,
+ {0x00e1, 0xc4} /* small letter a with acute */,
+ {0x00e2, 0xc0} /* small letter a with circumflex */,
+ {0x00e3, 0xe2} /* small letter a with tilde */,
+ {0x00e4, 0xcc} /* small letter a with diaeresis */,
+ {0x00e5, 0xd4} /* small letter a with ring above */,
+ {0x00e6, 0xd7} /* small letter ae */,
+ {0x00e7, 0xb5} /* small letter c with cedilla */,
+ {0x00e8, 0xc9} /* small letter e with grave */,
+ {0x00e9, 0xc5} /* small letter e with acute */,
+ {0x00ea, 0xc1} /* small letter e with circumflex */,
+ {0x00eb, 0xcd} /* small letter e with diaeresis */,
+ {0x00ec, 0xd9} /* small letter i with grave */,
+ {0x00ed, 0xd5} /* small letter i with acute */,
+ {0x00ee, 0xd1} /* small letter i with circumflex */,
+ {0x00ef, 0xdd} /* small letter i with diaeresis */,
+ {0x00f0, 0xe4} /* small letter eth (icelandic) */,
+ {0x00f1, 0xb7} /* small letter n with tilde */,
+ {0x00f2, 0xca} /* small letter o with grave */,
+ {0x00f3, 0xc6} /* small letter o with acute */,
+ {0x00f4, 0xc2} /* small letter o with circumflex */,
+ {0x00f5, 0xea} /* small letter o with tilde */,
+ {0x00f6, 0xce} /* small letter o with diaeresis */,
+ {0x00f8, 0xd6} /* small letter o with stroke */,
+ {0x00f9, 0xcb} /* small letter u with grave */,
+ {0x00fa, 0xc7} /* small letter u with acute */,
+ {0x00fb, 0xc3} /* small letter u with circumflex */,
+ {0x00fc, 0xcf} /* small letter u with diaeresis */,
+ {0x00fd, 0xb2} /* small letter y with acute */,
+ {0x00fe, 0xf1} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xef} /* small letter y with diaeresis */,
+ {0x0160, 0xeb} /* capital letter s with caron */,
+ {0x0161, 0xec} /* small letter s with caron */,
+ {0x0178, 0xee} /* capital letter y with diaeresis */,
+ {0x0192, 0xbe} /* minuscule latine f hameçon */,
+ {0x02c6, 0xaa} /* modificative accent circonflexe */,
+ {0x02cb, 0xa9} /* modificative accent grave */,
+ {0x02dc, 0xac} /* tilde */,
+ {0x2014, 0xf6} /* dash */,
+ {0x20a4, 0xaf} /* sign */,
+ {0x25a0, 0xfc} /* square */
+};
+
+/*
+#define cet_ucs4_to_hp_roman8_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_hp_roman8_extra[cet_ucs4_to_hp_roman8_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_hp_roman8 = /* defined in cet.h */
+{
+ cet_cs_name_hp_roman8, /* name of character set */
+ cet_cs_alias_hp_roman8, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_hp_roman8, /* char to UCS-4 value table */
+ cet_ucs4_ofs_hp_roman8, /* first non standard character */
+ cet_ucs4_cnt_hp_roman8, /* number of values in table */
+
+ cet_ucs4_to_hp_roman8_links, /* UCS-4 to char links */
+ cet_ucs4_to_hp_roman8_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int hp_roman8_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x00c0, 0x00c2, 0x00c8, 0x00ca, 0x00cb, 0x00ce, 0x00cf,
+ 0x00b4, 0x02cb, 0x02c6, 0x00a8, 0x02dc, 0x00d9, 0x00db, 0x20a4,
+ 0x00af, 0x00dd, 0x00fd, 0x00b0, 0x00c7, 0x00e7, 0x00d1, 0x00f1,
+ 0x00a1, 0x00bf, 0x00a4, 0x00a3, 0x00a5, 0x00a7, 0x0192, 0x00a2,
+ 0x00e2, 0x00ea, 0x00f4, 0x00fb, 0x00e1, 0x00e9, 0x00f3, 0x00fa,
+ 0x00e0, 0x00e8, 0x00f2, 0x00f9, 0x00e4, 0x00eb, 0x00f6, 0x00fc,
+ 0x00c5, 0x00ee, 0x00d8, 0x00c6, 0x00e5, 0x00ed, 0x00f8, 0x00e6,
+ 0x00c4, 0x00ec, 0x00d6, 0x00dc, 0x00c9, 0x00ef, 0x00df, 0x00d4,
+ 0x00c1, 0x00c3, 0x00e3, 0x00d0, 0x00f0, 0x00cd, 0x00cc, 0x00d3,
+ 0x00d2, 0x00d5, 0x00f5, 0x0160, 0x0161, 0x00da, 0x0178, 0x00ff,
+ 0x00de, 0x00fe, 0x00b7, 0x00b5, 0x00b6, 0x00be, 0x2014, 0x00bc,
+ 0x00bd, 0x00aa, 0x00ba, 0x00ab, 0x25a0, 0x00bb, 0x00b1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM037" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm037_h
+#define ibm037_h
+
+#define cet_cs_name_ibm037 "IBM037"
+
+const char *cet_cs_alias_ibm037[] =
+{
+ "IBM037/CR-LF", "037/CR-LF", "CP037/CR-LF", "ebcdic-cp-ca",
+ "ebcdic-cp-nl", "ebcdic-cp-us", "ebcdic-cp-wt", NULL
+};
+
+#define cet_ucs4_ofs_ibm037 4
+#define cet_ucs4_cnt_ibm037 252
+
+const int cet_ucs4_map_ibm037[cet_ucs4_cnt_ibm037] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x00e7, 0x00f1, 0x00a2, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x007c, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x0021, 0x0024,
+ 0x002a, 0x0029, 0x003b, 0x00ac, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x00d1, 0x00a6, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x0060, 0x003a, 0x0023,
+ 0x0040, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x00a4, 0x00b5, 0x007e, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x005e, 0x00a3, 0x00a5, 0x00b7,
+ 0x00a9, 0x00a7, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x005b, 0x005d,
+ 0x00af, 0x00a8, 0x00b4, 0x00d7, 0x007b, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00f6, 0x00f2, 0x00f3, 0x00f5, 0x007d, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x00fc, 0x00f9, 0x00fa, 0x00ff, 0x005c, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x00d6, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm037_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm037_links[cet_ucs4_to_ibm037_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x5a} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x7b} /* sign */,
+ {0x0024, 0x5b} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0x7c} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0xba} /* square bracket */,
+ {0x005c, 0xe0} /* solidus */,
+ {0x005d, 0xbb} /* square bracket */,
+ {0x005e, 0xb0} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x79} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0xc0} /* curly bracket */,
+ {0x007c, 0x4f} /* line */,
+ {0x007d, 0xd0} /* curly bracket */,
+ {0x007e, 0xa1} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0x4a} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0x6a} /* bar */,
+ {0x00a7, 0xb5} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0x5f} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00af, 0xbc} /* macron */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xec} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xcc} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xdc} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */
+};
+
+/*
+#define cet_ucs4_to_ibm037_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm037_extra[cet_ucs4_to_ibm037_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm037 = /* defined in cet.h */
+{
+ cet_cs_name_ibm037, /* name of character set */
+ cet_cs_alias_ibm037, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm037, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm037, /* first non standard character */
+ cet_ucs4_cnt_ibm037, /* number of values in table */
+
+ cet_ucs4_to_ibm037_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm037_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm037_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x00e0, 0x00e1, 0x00e3, 0x00e5,
+ 0x00e7, 0x00f1, 0x00a2, 0x002e, 0x003c, 0x0028, 0x002b, 0x007c,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x0021, 0x0024, 0x002a, 0x0029, 0x003b, 0x00ac,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x00d1, 0x00a6, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x0060, 0x003a, 0x0023, 0x0040, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x00a4,
+ 0x00b5, 0x007e, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x005e, 0x00a3, 0x00a5, 0x00b7, 0x00a9, 0x00a7, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x005b, 0x005d, 0x00af, 0x00a8, 0x00b4, 0x00d7,
+ 0x007b, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00f6, 0x00f2, 0x00f3, 0x00f5,
+ 0x007d, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x00fc, 0x00f9, 0x00fa, 0x00ff,
+ 0x005c, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x00d6, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM1004" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm1004_h
+#define ibm1004_h
+
+#define cet_cs_name_ibm1004 "IBM1004"
+
+const char *cet_cs_alias_ibm1004[] =
+{
+ "IBM1004/CR-LF", "1004/CR-LF", "CP1004/CR-LF", "os2latin1",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm1004 128
+#define cet_ucs4_cnt_ibm1004 128
+
+const int cet_ucs4_map_ibm1004[cet_ucs4_cnt_ibm1004] =
+{
+ -1, -1, 0x201a, -1, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, -1, -1, 0x0178,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
+};
+
+#define cet_ucs4_to_ibm1004_ct 23
+
+const cet_ucs4_link_t cet_ucs4_to_ibm1004_links[cet_ucs4_to_ibm1004_ct] =
+{
+ {0x0152, 0x8c} /* capital ligature oe */,
+ {0x0153, 0x9c} /* small ligature oe */,
+ {0x0160, 0x8a} /* capital letter s with caron */,
+ {0x0161, 0x9a} /* small letter s with caron */,
+ {0x0178, 0x9f} /* capital letter y with diaeresis */,
+ {0x02c6, 0x88} /* modificative accent circonflexe */,
+ {0x02dc, 0x98} /* tilde */,
+ {0x2013, 0x96} /* dash */,
+ {0x2014, 0x97} /* dash */,
+ {0x2018, 0x91} /* single quotation mark */,
+ {0x2019, 0x92} /* single quotation mark */,
+ {0x201a, 0x82} /* low-9 quotation mark */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x94} /* double quotation mark */,
+ {0x201e, 0x84} /* low-9 quotation mark */,
+ {0x2020, 0x86} /* dagger */,
+ {0x2021, 0x87} /* dagger */,
+ {0x2022, 0x95} /* puce */,
+ {0x2026, 0x85} /* horizontal ellipsis */,
+ {0x2030, 0x89} /* mille sign */,
+ {0x2039, 0x8b} /* left-pointing angle quotation mark */,
+ {0x203a, 0x9b} /* right-pointing angle quotation mark */,
+ {0x2122, 0x99} /* mark sign */
+};
+
+/*
+#define cet_ucs4_to_ibm1004_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm1004_extra[cet_ucs4_to_ibm1004_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm1004 = /* defined in cet.h */
+{
+ cet_cs_name_ibm1004, /* name of character set */
+ cet_cs_alias_ibm1004, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm1004, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm1004, /* first non standard character */
+ cet_ucs4_cnt_ibm1004, /* number of values in table */
+
+ cet_ucs4_to_ibm1004_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm1004_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm1004_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ -1, -1, 0x201a, -1, 0x201e, 0x2026, 0x2020, 0x2021,
+ 0x02c6, 0x2030, 0x0160, 0x2039, 0x0152, -1, -1, -1,
+ -1, 0x2018, 0x2019, 0x201c, 0x201d, 0x2022, 0x2013, 0x2014,
+ 0x02dc, 0x2122, 0x0161, 0x203a, 0x0153, -1, -1, 0x0178,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM1026" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm1026_h
+#define ibm1026_h
+
+#define cet_cs_name_ibm1026 "IBM1026"
+
+const char *cet_cs_alias_ibm1026[] =
+{
+ "IBM1026/CR-LF", "1026/CR-LF", "CP1026/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm1026 4
+#define cet_ucs4_cnt_ibm1026 252
+
+const int cet_ucs4_map_ibm1026[cet_ucs4_cnt_ibm1026] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x007b, 0x00f1, 0x00c7, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x0021, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x011e, 0x0130,
+ 0x002a, 0x0029, 0x003b, 0x005e, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x005b, 0x00d1, 0x015f, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x0131, 0x003a, 0x00d6,
+ 0x015e, 0x0027, 0x003d, 0x00dc, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x007d, 0x0060, 0x00a6, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x02db, 0x00c6, 0x00a4, 0x00b5, 0x00f6, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x005d, 0x0024, 0x0040, 0x00ae, 0x00a2, 0x00a3, 0x00a5, 0x00b7,
+ 0x00a9, 0x00a7, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00ac, 0x007c,
+ 0x2014, 0x00a8, 0x00b4, 0x00d7, 0x00e7, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x007e, 0x00f2, 0x00f3, 0x00f5, 0x011f, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x005c, 0x00f9, 0x00fa, 0x00ff, 0x00fc, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x0023, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x0022, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm1026_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm1026_links[cet_ucs4_to_ibm1026_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x4f} /* mark */,
+ {0x0022, 0xfc} /* mark */,
+ {0x0023, 0xec} /* sign */,
+ {0x0024, 0xad} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0xae} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0x68} /* square bracket */,
+ {0x005c, 0xdc} /* solidus */,
+ {0x005d, 0xac} /* square bracket */,
+ {0x005e, 0x5f} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x8d} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0x48} /* curly bracket */,
+ {0x007c, 0xbb} /* line */,
+ {0x007d, 0x8c} /* curly bracket */,
+ {0x007e, 0xcc} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0x8e} /* bar */,
+ {0x00a7, 0xb5} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xba} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x4a} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0x7b} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0x7f} /* capital letter u with diaeresis */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0xc0} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xa1} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xe0} /* small letter u with diaeresis */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */,
+ {0x011e, 0x5a} /* capital letter g with breve */,
+ {0x011f, 0xd0} /* small letter g with breve */,
+ {0x0130, 0x5b} /* capital letter i with dot above */,
+ {0x0131, 0x79} /* small letter i dotless */,
+ {0x015e, 0x7c} /* capital letter s with cedilla */,
+ {0x015f, 0x6a} /* small letter s with cedilla */,
+ {0x02db, 0x9d} /* ogonek */,
+ {0x2014, 0xbc} /* dash */
+};
+
+/*
+#define cet_ucs4_to_ibm1026_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm1026_extra[cet_ucs4_to_ibm1026_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm1026 = /* defined in cet.h */
+{
+ cet_cs_name_ibm1026, /* name of character set */
+ cet_cs_alias_ibm1026, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm1026, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm1026, /* first non standard character */
+ cet_ucs4_cnt_ibm1026, /* number of values in table */
+
+ cet_ucs4_to_ibm1026_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm1026_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm1026_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x00e0, 0x00e1, 0x00e3, 0x00e5,
+ 0x007b, 0x00f1, 0x00c7, 0x002e, 0x003c, 0x0028, 0x002b, 0x0021,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x011e, 0x0130, 0x002a, 0x0029, 0x003b, 0x005e,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x005b, 0x00d1, 0x015f, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x0131, 0x003a, 0x00d6, 0x015e, 0x0027, 0x003d, 0x00dc,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x007d, 0x0060, 0x00a6, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x02db, 0x00c6, 0x00a4,
+ 0x00b5, 0x00f6, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x005d, 0x0024, 0x0040, 0x00ae,
+ 0x00a2, 0x00a3, 0x00a5, 0x00b7, 0x00a9, 0x00a7, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00ac, 0x007c, 0x2014, 0x00a8, 0x00b4, 0x00d7,
+ 0x00e7, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x007e, 0x00f2, 0x00f3, 0x00f5,
+ 0x011f, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x005c, 0x00f9, 0x00fa, 0x00ff,
+ 0x00fc, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x0023, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x0022, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM1047" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm1047_h
+#define ibm1047_h
+
+#define cet_cs_name_ibm1047 "IBM1047"
+
+const char *cet_cs_alias_ibm1047[] =
+{
+ "IBM1047/CR-LF", "1047/CR-LF", "CP1047/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm1047 4
+#define cet_ucs4_cnt_ibm1047 252
+
+const int cet_ucs4_map_ibm1047[cet_ucs4_cnt_ibm1047] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x00e7, 0x00f1, 0x00a2, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x007c, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x0021, 0x0024,
+ 0x002a, 0x0029, 0x003b, 0x005e, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x00d1, 0x00a6, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x0060, 0x003a, 0x0023,
+ 0x0040, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x00a4, 0x00b5, 0x007e, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x005b, 0x00de, 0x00ae, 0x00ac, 0x00a3, 0x00a5, 0x00b7,
+ 0x00a9, 0x00a7, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00dd, 0x00a8,
+ 0x00af, 0x005d, 0x00b4, 0x00d7, 0x007b, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00f6, 0x00f2, 0x00f3, 0x00f5, 0x007d, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x00fc, 0x00f9, 0x00fa, 0x00ff, 0x005c, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x00d6, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm1047_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm1047_links[cet_ucs4_to_ibm1047_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x5a} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x7b} /* sign */,
+ {0x0024, 0x5b} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0x7c} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0xad} /* square bracket */,
+ {0x005c, 0xe0} /* solidus */,
+ {0x005d, 0xbd} /* square bracket */,
+ {0x005e, 0x5f} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x79} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0xc0} /* curly bracket */,
+ {0x007c, 0x4f} /* line */,
+ {0x007d, 0xd0} /* curly bracket */,
+ {0x007e, 0xa1} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0x4a} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0x6a} /* bar */,
+ {0x00a7, 0xb5} /* sign */,
+ {0x00a8, 0xbb} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xb0} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00af, 0xbc} /* macron */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xec} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xba} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xcc} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xdc} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */
+};
+
+/*
+#define cet_ucs4_to_ibm1047_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm1047_extra[cet_ucs4_to_ibm1047_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm1047 = /* defined in cet.h */
+{
+ cet_cs_name_ibm1047, /* name of character set */
+ cet_cs_alias_ibm1047, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm1047, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm1047, /* first non standard character */
+ cet_ucs4_cnt_ibm1047, /* number of values in table */
+
+ cet_ucs4_to_ibm1047_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm1047_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm1047_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x00e0, 0x00e1, 0x00e3, 0x00e5,
+ 0x00e7, 0x00f1, 0x00a2, 0x002e, 0x003c, 0x0028, 0x002b, 0x007c,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x0021, 0x0024, 0x002a, 0x0029, 0x003b, 0x005e,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x00d1, 0x00a6, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x0060, 0x003a, 0x0023, 0x0040, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x00a4,
+ 0x00b5, 0x007e, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x005b, 0x00de, 0x00ae,
+ 0x00ac, 0x00a3, 0x00a5, 0x00b7, 0x00a9, 0x00a7, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00dd, 0x00a8, 0x00af, 0x005d, 0x00b4, 0x00d7,
+ 0x007b, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00f6, 0x00f2, 0x00f3, 0x00f5,
+ 0x007d, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x00fc, 0x00f9, 0x00fa, 0x00ff,
+ 0x005c, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x00d6, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM256" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm256_h
+#define ibm256_h
+
+#define cet_cs_name_ibm256 "IBM256"
+
+const char *cet_cs_alias_ibm256[] =
+{
+ "IBM256/CR-LF", "256/CR-LF", "CP256/CR-LF", "EBCDIC-INT1",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm256 4
+#define cet_ucs4_cnt_ibm256 252
+
+const int cet_ucs4_map_ibm256[cet_ucs4_cnt_ibm256] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x00e7, 0x00f1, 0x005b, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x0021, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x005d, 0x0024,
+ 0x002a, 0x0029, 0x003b, 0x005e, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x00d1, 0x00a6, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x0060, 0x003a, 0x0023,
+ 0x0040, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x00a4, 0x00b5, 0x007e, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x00a2, 0x00a3, 0x00a5, 0x20a7,
+ 0x0192, 0x00a7, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00ac, 0x007c,
+ 0x203e, 0x00a8, 0x00b4, 0x2017, 0x007b, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00f6, 0x00f2, 0x00f3, 0x00f5, 0x007d, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x00fc, 0x00f9, 0x00fa, 0x00ff, 0x005c, 0x2003, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x00d6, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm256_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm256_links[cet_ucs4_to_ibm256_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x4f} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x7b} /* sign */,
+ {0x0024, 0x5b} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0x7c} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0x4a} /* square bracket */,
+ {0x005c, 0xe0} /* solidus */,
+ {0x005d, 0x5a} /* square bracket */,
+ {0x005e, 0x5f} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x79} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0xc0} /* curly bracket */,
+ {0x007c, 0xbb} /* line */,
+ {0x007d, 0xd0} /* curly bracket */,
+ {0x007e, 0xa1} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0x6a} /* bar */,
+ {0x00a7, 0xb5} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xba} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xec} /* capital letter o with diaeresis */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xcc} /* small letter o with diaeresis */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xdc} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */,
+ {0x0192, 0xb4} /* minuscule latine f hameçon */,
+ {0x2003, 0xe1} /* space */,
+ {0x2017, 0xbf} /* low line */,
+ {0x203e, 0xbc} /* overline */,
+ {0x20a7, 0xb3} /* sign */
+};
+
+/*
+#define cet_ucs4_to_ibm256_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm256_extra[cet_ucs4_to_ibm256_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm256 = /* defined in cet.h */
+{
+ cet_cs_name_ibm256, /* name of character set */
+ cet_cs_alias_ibm256, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm256, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm256, /* first non standard character */
+ cet_ucs4_cnt_ibm256, /* number of values in table */
+
+ cet_ucs4_to_ibm256_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm256_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm256_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x00e0, 0x00e1, 0x00e3, 0x00e5,
+ 0x00e7, 0x00f1, 0x005b, 0x002e, 0x003c, 0x0028, 0x002b, 0x0021,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x005d, 0x0024, 0x002a, 0x0029, 0x003b, 0x005e,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x00d1, 0x00a6, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x0060, 0x003a, 0x0023, 0x0040, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x00a4,
+ 0x00b5, 0x007e, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x00a2, 0x00a3, 0x00a5, 0x20a7, 0x0192, 0x00a7, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00ac, 0x007c, 0x203e, 0x00a8, 0x00b4, 0x2017,
+ 0x007b, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00f6, 0x00f2, 0x00f3, 0x00f5,
+ 0x007d, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x00fc, 0x00f9, 0x00fa, 0x00ff,
+ 0x005c, 0x2003, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x00d6, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM273" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm273_h
+#define ibm273_h
+
+#define cet_cs_name_ibm273 "IBM273"
+
+const char *cet_cs_alias_ibm273[] =
+{
+ "IBM273/CR-LF", "273/CR-LF", "CP273/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm273 4
+#define cet_ucs4_cnt_ibm273 252
+
+const int cet_ucs4_map_ibm273[cet_ucs4_cnt_ibm273] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x007b,
+ 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x00e7, 0x00f1, 0x00c4, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x0021, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x007e, 0x00dc, 0x0024,
+ 0x002a, 0x0029, 0x003b, 0x005e, 0x002d, 0x002f, 0x00c2, 0x005b,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x00d1, 0x00f6, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x0060, 0x003a, 0x0023,
+ 0x00a7, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x00a4, 0x00b5, 0x00df, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x00a2, 0x00a3, 0x00a5, 0x00b7,
+ 0x00a9, 0x0040, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00ac, 0x007c,
+ 0x203e, 0x00a8, 0x00b4, 0x00d7, 0x00e4, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00a6, 0x00f2, 0x00f3, 0x00f5, 0x00fc, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x007d, 0x00f9, 0x00fa, 0x00ff, 0x00d6, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x005c, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x005d, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm273_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm273_links[cet_ucs4_to_ibm273_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x4f} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x7b} /* sign */,
+ {0x0024, 0x5b} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0xb5} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0x63} /* square bracket */,
+ {0x005c, 0xec} /* solidus */,
+ {0x005d, 0xfc} /* square bracket */,
+ {0x005e, 0x5f} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x79} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0x43} /* curly bracket */,
+ {0x007c, 0xbb} /* line */,
+ {0x007d, 0xdc} /* curly bracket */,
+ {0x007e, 0x59} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0xcc} /* bar */,
+ {0x00a7, 0x7c} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xba} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x4a} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xe0} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0x5a} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0xa1} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0xc0} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0x6a} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xd0} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */,
+ {0x203e, 0xbc} /* overline */
+};
+
+/*
+#define cet_ucs4_to_ibm273_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm273_extra[cet_ucs4_to_ibm273_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm273 = /* defined in cet.h */
+{
+ cet_cs_name_ibm273, /* name of character set */
+ cet_cs_alias_ibm273, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm273, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm273, /* first non standard character */
+ cet_ucs4_cnt_ibm273, /* number of values in table */
+
+ cet_ucs4_to_ibm273_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm273_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm273_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x007b, 0x00e0, 0x00e1, 0x00e3, 0x00e5,
+ 0x00e7, 0x00f1, 0x00c4, 0x002e, 0x003c, 0x0028, 0x002b, 0x0021,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x007e, 0x00dc, 0x0024, 0x002a, 0x0029, 0x003b, 0x005e,
+ 0x002d, 0x002f, 0x00c2, 0x005b, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x00d1, 0x00f6, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x0060, 0x003a, 0x0023, 0x00a7, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x00a4,
+ 0x00b5, 0x00df, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x00a2, 0x00a3, 0x00a5, 0x00b7, 0x00a9, 0x0040, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00ac, 0x007c, 0x203e, 0x00a8, 0x00b4, 0x00d7,
+ 0x00e4, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00a6, 0x00f2, 0x00f3, 0x00f5,
+ 0x00fc, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x007d, 0x00f9, 0x00fa, 0x00ff,
+ 0x00d6, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x005c, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x005d, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM277" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm277_h
+#define ibm277_h
+
+#define cet_cs_name_ibm277 "IBM277"
+
+const char *cet_cs_alias_ibm277[] =
+{
+ "IBM277/CR-LF", "EBCDIC-CP-DK", "EBCDIC-CP-NO", NULL
+};
+
+#define cet_ucs4_ofs_ibm277 4
+#define cet_ucs4_cnt_ibm277 252
+
+const int cet_ucs4_map_ibm277[cet_ucs4_cnt_ibm277] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x00e0, 0x00e1, 0x00e3, 0x007d, 0x00e7, 0x00f1, 0x0023, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x0021, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x00a4, 0x00c5,
+ 0x002a, 0x0029, 0x003b, 0x005e, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x0024, 0x00c7, 0x00d1, 0x00f8, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00a6, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x0060, 0x003a, 0x00c6,
+ 0x00d8, 0x0027, 0x003d, 0x0022, 0x0040, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x007b, 0x00b8, 0x005b, 0x005d, 0x00b5, 0x00fc, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x00a2, 0x00a3, 0x00a5, 0x00b7,
+ 0x00a9, 0x00a7, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00ac, 0x007c,
+ 0x203e, 0x00a8, 0x00b4, 0x00d7, 0x00e6, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00f6, 0x00f2, 0x00f3, 0x00f5, 0x00e5, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x007e, 0x00f9, 0x00fa, 0x00ff, 0x005c, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x00d6, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm277_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm277_links[cet_ucs4_to_ibm277_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x4f} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x4a} /* sign */,
+ {0x0024, 0x67} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0x80} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0x9e} /* square bracket */,
+ {0x005c, 0xe0} /* solidus */,
+ {0x005d, 0x9f} /* square bracket */,
+ {0x005e, 0x5f} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x79} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0x9c} /* curly bracket */,
+ {0x007c, 0xbb} /* line */,
+ {0x007d, 0x47} /* curly bracket */,
+ {0x007e, 0xdc} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x5a} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0x70} /* bar */,
+ {0x00a7, 0xb5} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xba} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x5b} /* capital letter a with ring above */,
+ {0x00c6, 0x7b} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xec} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x7c} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0xd0} /* small letter a with ring above */,
+ {0x00e6, 0xc0} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xcc} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x6a} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xa1} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */,
+ {0x203e, 0xbc} /* overline */
+};
+
+/*
+#define cet_ucs4_to_ibm277_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm277_extra[cet_ucs4_to_ibm277_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm277 = /* defined in cet.h */
+{
+ cet_cs_name_ibm277, /* name of character set */
+ cet_cs_alias_ibm277, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm277, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm277, /* first non standard character */
+ cet_ucs4_cnt_ibm277, /* number of values in table */
+
+ cet_ucs4_to_ibm277_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm277_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm277_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x00e0, 0x00e1, 0x00e3, 0x007d,
+ 0x00e7, 0x00f1, 0x0023, 0x002e, 0x003c, 0x0028, 0x002b, 0x0021,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x00a4, 0x00c5, 0x002a, 0x0029, 0x003b, 0x005e,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x0024,
+ 0x00c7, 0x00d1, 0x00f8, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00a6, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x0060, 0x003a, 0x00c6, 0x00d8, 0x0027, 0x003d, 0x0022,
+ 0x0040, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x007b, 0x00b8, 0x005b, 0x005d,
+ 0x00b5, 0x00fc, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x00a2, 0x00a3, 0x00a5, 0x00b7, 0x00a9, 0x00a7, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00ac, 0x007c, 0x203e, 0x00a8, 0x00b4, 0x00d7,
+ 0x00e6, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00f6, 0x00f2, 0x00f3, 0x00f5,
+ 0x00e5, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x007e, 0x00f9, 0x00fa, 0x00ff,
+ 0x005c, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x00d6, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM278" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm278_h
+#define ibm278_h
+
+#define cet_cs_name_ibm278 "IBM278"
+
+const char *cet_cs_alias_ibm278[] =
+{
+ "IBM278/CR-LF", "278/CR-LF", "CP278/CR-LF", "ebcdic-cp-fi",
+ "ebcdic-cp-se", NULL
+};
+
+#define cet_ucs4_ofs_ibm278 4
+#define cet_ucs4_cnt_ibm278 252
+
+const int cet_ucs4_map_ibm278[cet_ucs4_cnt_ibm278] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x007b,
+ 0x00e0, 0x00e1, 0x00e3, 0x007d, 0x00e7, 0x00f1, 0x00a7, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x0021, 0x0026, 0x0060, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x00a4, 0x00c5,
+ 0x002a, 0x0029, 0x003b, 0x005e, 0x002d, 0x002f, 0x00c2, 0x0023,
+ 0x00c0, 0x00c1, 0x00c3, 0x0024, 0x00c7, 0x00d1, 0x00f6, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00e9, 0x003a, 0x00c4,
+ 0x00d6, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x005d, 0x00b5, 0x00fc, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x00a2, 0x00a3, 0x00a5, 0x00b7,
+ 0x00a9, 0x005b, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00ac, 0x007c,
+ 0x203e, 0x00a8, 0x00b4, 0x00d7, 0x00e4, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00a6, 0x00f2, 0x00f3, 0x00f5, 0x00e5, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x007e, 0x00f9, 0x00fa, 0x00ff, 0x005c, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x0040, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm278_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm278_links[cet_ucs4_to_ibm278_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x4f} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x63} /* sign */,
+ {0x0024, 0x67} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0xec} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0xb5} /* square bracket */,
+ {0x005c, 0xe0} /* solidus */,
+ {0x005d, 0x9f} /* square bracket */,
+ {0x005e, 0x5f} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x51} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0x43} /* curly bracket */,
+ {0x007c, 0xbb} /* line */,
+ {0x007d, 0x47} /* curly bracket */,
+ {0x007e, 0xdc} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x5a} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0xcc} /* bar */,
+ {0x00a7, 0x4a} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xba} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x7b} /* capital letter a with diaeresis */,
+ {0x00c5, 0x5b} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0x7c} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0xc0} /* small letter a with diaeresis */,
+ {0x00e5, 0xd0} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x79} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0x6a} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xa1} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */,
+ {0x203e, 0xbc} /* overline */
+};
+
+/*
+#define cet_ucs4_to_ibm278_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm278_extra[cet_ucs4_to_ibm278_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm278 = /* defined in cet.h */
+{
+ cet_cs_name_ibm278, /* name of character set */
+ cet_cs_alias_ibm278, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm278, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm278, /* first non standard character */
+ cet_ucs4_cnt_ibm278, /* number of values in table */
+
+ cet_ucs4_to_ibm278_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm278_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm278_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x007b, 0x00e0, 0x00e1, 0x00e3, 0x007d,
+ 0x00e7, 0x00f1, 0x00a7, 0x002e, 0x003c, 0x0028, 0x002b, 0x0021,
+ 0x0026, 0x0060, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x00a4, 0x00c5, 0x002a, 0x0029, 0x003b, 0x005e,
+ 0x002d, 0x002f, 0x00c2, 0x0023, 0x00c0, 0x00c1, 0x00c3, 0x0024,
+ 0x00c7, 0x00d1, 0x00f6, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x00e9, 0x003a, 0x00c4, 0x00d6, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x005d,
+ 0x00b5, 0x00fc, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x00a2, 0x00a3, 0x00a5, 0x00b7, 0x00a9, 0x005b, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00ac, 0x007c, 0x203e, 0x00a8, 0x00b4, 0x00d7,
+ 0x00e4, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00a6, 0x00f2, 0x00f3, 0x00f5,
+ 0x00e5, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x007e, 0x00f9, 0x00fa, 0x00ff,
+ 0x005c, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x0040, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM280" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm280_h
+#define ibm280_h
+
+#define cet_cs_name_ibm280 "IBM280"
+
+const char *cet_cs_alias_ibm280[] =
+{
+ "IBM280/CR-LF", "280/CR-LF", "CP280/CR-LF", "ebcdic-cp-it",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm280 4
+#define cet_ucs4_cnt_ibm280 252
+
+const int cet_ucs4_map_ibm280[cet_ucs4_cnt_ibm280] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x007b, 0x00e1, 0x00e3, 0x00e5, 0x005c, 0x00f1, 0x00b0, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x0021, 0x0026, 0x005d, 0x00ea, 0x00eb,
+ 0x007d, 0x00ed, 0x00ee, 0x00ef, 0x007e, 0x00df, 0x00e9, 0x0024,
+ 0x002a, 0x0029, 0x003b, 0x005e, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x00d1, 0x00f2, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00f9, 0x003a, 0x00a3,
+ 0x00a7, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x005b, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x00a4, 0x00b5, 0x00ec, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x00a2, 0x0023, 0x00a5, 0x00b7,
+ 0x00a9, 0x0040, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00ac, 0x007c,
+ 0x203e, 0x00a8, 0x00b4, 0x00d7, 0x00e0, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00f6, 0x00a6, 0x00f3, 0x00f5, 0x00e8, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x00fc, 0x0060, 0x00fa, 0x00ff, 0x00e7, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x00d6, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm280_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm280_links[cet_ucs4_to_ibm280_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x4f} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0xb1} /* sign */,
+ {0x0024, 0x5b} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0xb5} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0x90} /* square bracket */,
+ {0x005c, 0x48} /* solidus */,
+ {0x005d, 0x51} /* square bracket */,
+ {0x005e, 0x5f} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0xdd} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0x44} /* curly bracket */,
+ {0x007c, 0xbb} /* line */,
+ {0x007d, 0x54} /* curly bracket */,
+ {0x007e, 0x58} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0x7b} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0xcd} /* bar */,
+ {0x00a7, 0x7c} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xba} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00b0, 0x4a} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xec} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0xc0} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0xe0} /* small letter c with cedilla */,
+ {0x00e8, 0xd0} /* small letter e with grave */,
+ {0x00e9, 0x5a} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0xa1} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0x6a} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xcc} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0x79} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xdc} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */,
+ {0x203e, 0xbc} /* overline */
+};
+
+/*
+#define cet_ucs4_to_ibm280_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm280_extra[cet_ucs4_to_ibm280_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm280 = /* defined in cet.h */
+{
+ cet_cs_name_ibm280, /* name of character set */
+ cet_cs_alias_ibm280, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm280, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm280, /* first non standard character */
+ cet_ucs4_cnt_ibm280, /* number of values in table */
+
+ cet_ucs4_to_ibm280_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm280_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm280_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x007b, 0x00e1, 0x00e3, 0x00e5,
+ 0x005c, 0x00f1, 0x00b0, 0x002e, 0x003c, 0x0028, 0x002b, 0x0021,
+ 0x0026, 0x005d, 0x00ea, 0x00eb, 0x007d, 0x00ed, 0x00ee, 0x00ef,
+ 0x007e, 0x00df, 0x00e9, 0x0024, 0x002a, 0x0029, 0x003b, 0x005e,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x00d1, 0x00f2, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x00f9, 0x003a, 0x00a3, 0x00a7, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x005b, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x00a4,
+ 0x00b5, 0x00ec, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x00a2, 0x0023, 0x00a5, 0x00b7, 0x00a9, 0x0040, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00ac, 0x007c, 0x203e, 0x00a8, 0x00b4, 0x00d7,
+ 0x00e0, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00f6, 0x00a6, 0x00f3, 0x00f5,
+ 0x00e8, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x00fc, 0x0060, 0x00fa, 0x00ff,
+ 0x00e7, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x00d6, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM284" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm284_h
+#define ibm284_h
+
+#define cet_cs_name_ibm284 "IBM284"
+
+const char *cet_cs_alias_ibm284[] =
+{
+ "IBM284/CR-LF", "284/CR-LF", "CP284/CR-LF", "ebcdic-cp-es",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm284 4
+#define cet_ucs4_cnt_ibm284 252
+
+const int cet_ucs4_map_ibm284[cet_ucs4_cnt_ibm284] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x00e7, 0x00a6, 0x005b, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x007c, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x005d, 0x0024,
+ 0x002a, 0x0029, 0x003b, 0x00ac, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x0023, 0x00f1, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x0060, 0x003a, 0x00d1,
+ 0x0040, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x00a4, 0x00b5, 0x00a8, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x00a2, 0x00a3, 0x00a5, 0x00b7,
+ 0x00a9, 0x00a7, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x005e, 0x0021,
+ 0x203e, 0x007e, 0x00b4, 0x00d7, 0x007b, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00f6, 0x00f2, 0x00f3, 0x00f5, 0x007d, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x00fc, 0x00f9, 0x00fa, 0x00ff, 0x005c, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x00d6, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm284_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm284_links[cet_ucs4_to_ibm284_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0xbb} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x69} /* sign */,
+ {0x0024, 0x5b} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0x7c} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0x4a} /* square bracket */,
+ {0x005c, 0xe0} /* solidus */,
+ {0x005d, 0x5a} /* square bracket */,
+ {0x005e, 0xba} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x79} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0xc0} /* curly bracket */,
+ {0x007c, 0x4f} /* line */,
+ {0x007d, 0xd0} /* curly bracket */,
+ {0x007e, 0xbd} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0x49} /* bar */,
+ {0x00a7, 0xb5} /* sign */,
+ {0x00a8, 0xa1} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0x5f} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x7b} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xec} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x6a} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xcc} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xdc} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */,
+ {0x203e, 0xbc} /* overline */
+};
+
+/*
+#define cet_ucs4_to_ibm284_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm284_extra[cet_ucs4_to_ibm284_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm284 = /* defined in cet.h */
+{
+ cet_cs_name_ibm284, /* name of character set */
+ cet_cs_alias_ibm284, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm284, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm284, /* first non standard character */
+ cet_ucs4_cnt_ibm284, /* number of values in table */
+
+ cet_ucs4_to_ibm284_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm284_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm284_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x00e0, 0x00e1, 0x00e3, 0x00e5,
+ 0x00e7, 0x00a6, 0x005b, 0x002e, 0x003c, 0x0028, 0x002b, 0x007c,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x005d, 0x0024, 0x002a, 0x0029, 0x003b, 0x00ac,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x0023, 0x00f1, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x0060, 0x003a, 0x00d1, 0x0040, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x00a4,
+ 0x00b5, 0x00a8, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x00a2, 0x00a3, 0x00a5, 0x00b7, 0x00a9, 0x00a7, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x005e, 0x0021, 0x203e, 0x007e, 0x00b4, 0x00d7,
+ 0x007b, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00f6, 0x00f2, 0x00f3, 0x00f5,
+ 0x007d, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x00fc, 0x00f9, 0x00fa, 0x00ff,
+ 0x005c, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x00d6, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM285" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm285_h
+#define ibm285_h
+
+#define cet_cs_name_ibm285 "IBM285"
+
+const char *cet_cs_alias_ibm285[] =
+{
+ "IBM285/CR-LF", "285/CR-LF", "CP285/CR-LF", "ebcdic-cp-gb",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm285 4
+#define cet_ucs4_cnt_ibm285 252
+
+const int cet_ucs4_map_ibm285[cet_ucs4_cnt_ibm285] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x00e7, 0x00f1, 0x0024, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x007c, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x0021, 0x00a3,
+ 0x002a, 0x0029, 0x003b, 0x00ac, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x00d1, 0x00a6, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x0060, 0x003a, 0x0023,
+ 0x0040, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x00a4, 0x00b5, 0x203e, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x00a2, 0x005b, 0x00a5, 0x00b7,
+ 0x00a9, 0x00a7, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x005e, 0x005d,
+ 0x007e, 0x00a8, 0x00b4, 0x00d7, 0x007b, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00f6, 0x00f2, 0x00f3, 0x00f5, 0x007d, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x00fc, 0x00f9, 0x00fa, 0x00ff, 0x005c, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x00d6, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm285_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm285_links[cet_ucs4_to_ibm285_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x5a} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x7b} /* sign */,
+ {0x0024, 0x4a} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0x7c} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0xb1} /* square bracket */,
+ {0x005c, 0xe0} /* solidus */,
+ {0x005d, 0xbb} /* square bracket */,
+ {0x005e, 0xba} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x79} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0xc0} /* curly bracket */,
+ {0x007c, 0x4f} /* line */,
+ {0x007d, 0xd0} /* curly bracket */,
+ {0x007e, 0xbc} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0x5b} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0x6a} /* bar */,
+ {0x00a7, 0xb5} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0x5f} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xec} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xcc} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xdc} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */,
+ {0x203e, 0xa1} /* overline */
+};
+
+/*
+#define cet_ucs4_to_ibm285_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm285_extra[cet_ucs4_to_ibm285_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm285 = /* defined in cet.h */
+{
+ cet_cs_name_ibm285, /* name of character set */
+ cet_cs_alias_ibm285, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm285, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm285, /* first non standard character */
+ cet_ucs4_cnt_ibm285, /* number of values in table */
+
+ cet_ucs4_to_ibm285_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm285_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm285_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x00e0, 0x00e1, 0x00e3, 0x00e5,
+ 0x00e7, 0x00f1, 0x0024, 0x002e, 0x003c, 0x0028, 0x002b, 0x007c,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x0021, 0x00a3, 0x002a, 0x0029, 0x003b, 0x00ac,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x00d1, 0x00a6, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x0060, 0x003a, 0x0023, 0x0040, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x00a4,
+ 0x00b5, 0x203e, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x00a2, 0x005b, 0x00a5, 0x00b7, 0x00a9, 0x00a7, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x005e, 0x005d, 0x007e, 0x00a8, 0x00b4, 0x00d7,
+ 0x007b, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00f6, 0x00f2, 0x00f3, 0x00f5,
+ 0x007d, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x00fc, 0x00f9, 0x00fa, 0x00ff,
+ 0x005c, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x00d6, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM297" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm297_h
+#define ibm297_h
+
+#define cet_cs_name_ibm297 "IBM297"
+
+const char *cet_cs_alias_ibm297[] =
+{
+ "IBM297/CR-LF", "297/CR-LF", "CP297/CR-LF", "ebcdic-cp-fr",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm297 4
+#define cet_ucs4_cnt_ibm297 252
+
+const int cet_ucs4_map_ibm297[cet_ucs4_cnt_ibm297] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x0040, 0x00e1, 0x00e3, 0x00e5, 0x005c, 0x00f1, 0x00b0, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x0021, 0x0026, 0x007b, 0x00ea, 0x00eb,
+ 0x007d, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x00a7, 0x0024,
+ 0x002a, 0x0029, 0x003b, 0x005e, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x00d1, 0x00f9, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00b5, 0x003a, 0x00a3,
+ 0x00e0, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x005b, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x00a4, 0x0060, 0x00a8, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x00a2, 0x0023, 0x00a5, 0x00b7,
+ 0x00a9, 0x005d, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00ac, 0x007c,
+ 0x203e, 0x007e, 0x00b4, 0x00d7, 0x00e9, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00f6, 0x00f2, 0x00f3, 0x00f5, 0x00e8, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x00fc, 0x00a6, 0x00fa, 0x00ff, 0x00e7, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x00d6, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm297_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm297_links[cet_ucs4_to_ibm297_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x4f} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0xb1} /* sign */,
+ {0x0024, 0x5b} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0x44} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0x90} /* square bracket */,
+ {0x005c, 0x48} /* solidus */,
+ {0x005d, 0xb5} /* square bracket */,
+ {0x005e, 0x5f} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0xa0} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0x51} /* curly bracket */,
+ {0x007c, 0xbb} /* line */,
+ {0x007d, 0x54} /* curly bracket */,
+ {0x007e, 0xbd} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0x7b} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0xdd} /* bar */,
+ {0x00a7, 0x5a} /* sign */,
+ {0x00a8, 0xa1} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xba} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00b0, 0x4a} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0x79} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xec} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x7c} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0xe0} /* small letter c with cedilla */,
+ {0x00e8, 0xd0} /* small letter e with grave */,
+ {0x00e9, 0xc0} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xcc} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0x6a} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xdc} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */,
+ {0x203e, 0xbc} /* overline */
+};
+
+/*
+#define cet_ucs4_to_ibm297_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm297_extra[cet_ucs4_to_ibm297_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm297 = /* defined in cet.h */
+{
+ cet_cs_name_ibm297, /* name of character set */
+ cet_cs_alias_ibm297, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm297, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm297, /* first non standard character */
+ cet_ucs4_cnt_ibm297, /* number of values in table */
+
+ cet_ucs4_to_ibm297_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm297_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm297_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x0040, 0x00e1, 0x00e3, 0x00e5,
+ 0x005c, 0x00f1, 0x00b0, 0x002e, 0x003c, 0x0028, 0x002b, 0x0021,
+ 0x0026, 0x007b, 0x00ea, 0x00eb, 0x007d, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x00a7, 0x0024, 0x002a, 0x0029, 0x003b, 0x005e,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x00d1, 0x00f9, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x00b5, 0x003a, 0x00a3, 0x00e0, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x005b, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x00a4,
+ 0x0060, 0x00a8, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x00a2, 0x0023, 0x00a5, 0x00b7, 0x00a9, 0x005d, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00ac, 0x007c, 0x203e, 0x007e, 0x00b4, 0x00d7,
+ 0x00e9, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00f6, 0x00f2, 0x00f3, 0x00f5,
+ 0x00e8, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x00fc, 0x00a6, 0x00fa, 0x00ff,
+ 0x00e7, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x00d6, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM437" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm437_h
+#define ibm437_h
+
+#define cet_cs_name_ibm437 "IBM437"
+
+const char *cet_cs_alias_ibm437[] =
+{
+ "IBM437/CR-LF", "437/CR-LF", "CP437/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm437 128
+#define cet_ucs4_cnt_ibm437 128
+
+const int cet_ucs4_map_ibm437[cet_ucs4_cnt_ibm437] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x00ff, 0x00d6, 0x00dc, 0x00a2, 0x00a3, 0x00a5, 0x20a7, 0x0192,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm437_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_ibm437_links[cet_ucs4_to_ibm437_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a1, 0xad} /* exclamation mark */,
+ {0x00a2, 0x9b} /* sign */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00a5, 0x9d} /* sign */,
+ {0x00aa, 0xa6} /* ordinal indicator */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b5, 0xe6} /* sign */,
+ {0x00b7, 0xf9} /* dot */,
+ {0x00ba, 0xa7} /* ordinal indicator */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00bf, 0xa8} /* question mark */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c5, 0x8f} /* capital letter a with ring above */,
+ {0x00c6, 0x92} /* capital letter ae */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00d1, 0xa5} /* capital letter n with tilde */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00df, 0xe1} /* small letter sharp s (german) */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e5, 0x86} /* small letter a with ring above */,
+ {0x00e6, 0x91} /* small letter ae */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ec, 0x8d} /* small letter i with grave */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00ee, 0x8c} /* small letter i with circumflex */,
+ {0x00ef, 0x8b} /* small letter i with diaeresis */,
+ {0x00f1, 0xa4} /* small letter n with tilde */,
+ {0x00f2, 0x95} /* small letter o with grave */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00f9, 0x97} /* small letter u with grave */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fb, 0x96} /* small letter u with circumflex */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x00ff, 0x98} /* small letter y with diaeresis */,
+ {0x0192, 0x9f} /* minuscule latine f hameçon */,
+ {0x0393, 0xe2} /* capital letter gamma */,
+ {0x0398, 0xe9} /* capital letter theta */,
+ {0x03a3, 0xe4} /* capital letter sigma */,
+ {0x03a6, 0xe8} /* capital letter phi */,
+ {0x03a9, 0xea} /* capital letter omega */,
+ {0x03b1, 0xe0} /* small letter alpha */,
+ {0x03b4, 0xeb} /* small letter delta */,
+ {0x03b5, 0xee} /* small letter epsilon */,
+ {0x03c0, 0xe3} /* small letter pi */,
+ {0x03c3, 0xe5} /* small letter sigma */,
+ {0x03c4, 0xe7} /* small letter tau */,
+ {0x03c6, 0xed} /* small letter phi */,
+ {0x2022, 0xfa} /* puce */,
+ {0x207f, 0xfc} /* latin small letter n */,
+ {0x20a7, 0x9e} /* sign */,
+ {0x221a, 0xfb} /* root */,
+ {0x221e, 0xec} /* infinity */,
+ {0x2229, 0xef} /* intersection */,
+ {0x2248, 0xf7} /* equal to */,
+ {0x2261, 0xf0} /* to */,
+ {0x2264, 0xf3} /* or equal to */,
+ {0x2265, 0xf2} /* or equal to */,
+ {0x2310, 0xa9} /* not sign */,
+ {0x2320, 0xf4} /* half integral */,
+ {0x2321, 0xf5} /* half integral */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2552, 0xd5} /* drawings down light and right heavy */,
+ {0x2553, 0xd6} /* drawings down heavy and right light */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2555, 0xb8} /* drawings down light and left heavy */,
+ {0x2556, 0xb7} /* drawings down heavy and left light */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x2558, 0xd4} /* drawings up light and right heavy */,
+ {0x2559, 0xd3} /* drawings up heavy and right light */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255b, 0xbe} /* drawings up light and left heavy */,
+ {0x255c, 0xbd} /* drawings up heavy and left light */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x255e, 0xc6} /* drawings vertical light and right heavy */,
+ {0x255f, 0xc7} /* drawings vertical heavy and right light */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2561, 0xb5} /* drawings vertical light and left heavy */,
+ {0x2562, 0xb6} /* drawings vertical heavy and left light */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2564, 0xd1} /* drawings down light and horizontal heavy */,
+ {0x2565, 0xd2} /* drawings down heavy and horizontal light */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2567, 0xcf} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xd0} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256a, 0xd8} /* drawings vertical light and horizontal heavy */,
+ {0x256b, 0xd7} /* drawings vertical heavy and horizontal light */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x258c, 0xdd} /* half block */,
+ {0x2590, 0xde} /* half block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm437_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm437_extra[cet_ucs4_to_ibm437_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm437 = /* defined in cet.h */
+{
+ cet_cs_name_ibm437, /* name of character set */
+ cet_cs_alias_ibm437, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm437, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm437, /* first non standard character */
+ cet_ucs4_cnt_ibm437, /* number of values in table */
+
+ cet_ucs4_to_ibm437_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm437_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm437_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x00ff, 0x00d6, 0x00dc, 0x00a2, 0x00a3, 0x00a5, 0x20a7, 0x0192,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM500" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm500_h
+#define ibm500_h
+
+#define cet_cs_name_ibm500 "IBM500"
+
+const char *cet_cs_alias_ibm500[] =
+{
+ "IBM500/CR-LF", "500/CR-LF", "500V1", "CP500/CR-LF",
+ "ebcdic-cp-be", "ebcdic-cp-ch", NULL
+};
+
+#define cet_ucs4_ofs_ibm500 4
+#define cet_ucs4_cnt_ibm500 252
+
+const int cet_ucs4_map_ibm500[cet_ucs4_cnt_ibm500] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x00e7, 0x00f1, 0x005b, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x0021, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x005d, 0x0024,
+ 0x002a, 0x0029, 0x003b, 0x005e, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x00d1, 0x00a6, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x0060, 0x003a, 0x0023,
+ 0x0040, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x00f0, 0x00fd, 0x00fe, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x00e6, 0x00b8, 0x00c6, 0x00a4, 0x00b5, 0x007e, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x00d0, 0x00dd, 0x00de, 0x00ae, 0x00a2, 0x00a3, 0x00a5, 0x00b7,
+ 0x00a9, 0x00a7, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00ac, 0x007c,
+ 0x00af, 0x00a8, 0x00b4, 0x00d7, 0x007b, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x00f6, 0x00f2, 0x00f3, 0x00f5, 0x007d, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x00fc, 0x00f9, 0x00fa, 0x00ff, 0x005c, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x00d6, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm500_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm500_links[cet_ucs4_to_ibm500_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x4f} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x7b} /* sign */,
+ {0x0024, 0x5b} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0x7c} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0x4a} /* square bracket */,
+ {0x005c, 0xe0} /* solidus */,
+ {0x005d, 0x5a} /* square bracket */,
+ {0x005e, 0x5f} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x79} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0xc0} /* curly bracket */,
+ {0x007c, 0xbb} /* line */,
+ {0x007d, 0xd0} /* curly bracket */,
+ {0x007e, 0xa1} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0x6a} /* bar */,
+ {0x00a7, 0xb5} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xba} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00af, 0xbc} /* macron */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xbe} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x9e} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0xac} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0xec} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xae} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0x9c} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xcc} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xdc} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x8e} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */
+};
+
+/*
+#define cet_ucs4_to_ibm500_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm500_extra[cet_ucs4_to_ibm500_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm500 = /* defined in cet.h */
+{
+ cet_cs_name_ibm500, /* name of character set */
+ cet_cs_alias_ibm500, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm500, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm500, /* first non standard character */
+ cet_ucs4_cnt_ibm500, /* number of values in table */
+
+ cet_ucs4_to_ibm500_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm500_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm500_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x00e0, 0x00e1, 0x00e3, 0x00e5,
+ 0x00e7, 0x00f1, 0x005b, 0x002e, 0x003c, 0x0028, 0x002b, 0x0021,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x005d, 0x0024, 0x002a, 0x0029, 0x003b, 0x005e,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x00d1, 0x00a6, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x0060, 0x003a, 0x0023, 0x0040, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x00f0, 0x00fd, 0x00fe, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x00e6, 0x00b8, 0x00c6, 0x00a4,
+ 0x00b5, 0x007e, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x00d0, 0x00dd, 0x00de, 0x00ae,
+ 0x00a2, 0x00a3, 0x00a5, 0x00b7, 0x00a9, 0x00a7, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00ac, 0x007c, 0x00af, 0x00a8, 0x00b4, 0x00d7,
+ 0x007b, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x00f6, 0x00f2, 0x00f3, 0x00f5,
+ 0x007d, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x00fc, 0x00f9, 0x00fa, 0x00ff,
+ 0x005c, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x00d6, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM850" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm850_h
+#define ibm850_h
+
+#define cet_cs_name_ibm850 "IBM850"
+
+const char *cet_cs_alias_ibm850[] =
+{
+ "IBM850/CR-LF", "850/CR-LF", "CP850/CR-LF", "csPC850Multilingual",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm850 128
+#define cet_ucs4_cnt_ibm850 128
+
+const int cet_ucs4_map_ibm850[cet_ucs4_cnt_ibm850] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x00ff, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x00d7, 0x0192,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x00ae, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x00c0,
+ 0x00a9, 0x2563, 0x2551, 0x2557, 0x255d, 0x00a2, 0x00a5, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x00e3, 0x00c3,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+ 0x00f0, 0x00d0, 0x00ca, 0x00cb, 0x00c8, 0x0131, 0x00cd, 0x00ce,
+ 0x00cf, 0x2518, 0x250c, 0x2588, 0x2584, 0x00a6, 0x00cc, 0x2580,
+ 0x00d3, 0x00df, 0x00d4, 0x00d2, 0x00f5, 0x00d5, 0x00b5, 0x00fe,
+ 0x00de, 0x00da, 0x00db, 0x00d9, 0x00fd, 0x00dd, 0x00af, 0x00b4,
+ 0x00ad, 0x00b1, 0x2017, 0x00be, 0x00b6, 0x00a7, 0x00f7, 0x00b8,
+ 0x00b0, 0x00a8, 0x00b7, 0x00b9, 0x00b3, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm850_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_ibm850_links[cet_ucs4_to_ibm850_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a1, 0xad} /* exclamation mark */,
+ {0x00a2, 0xbd} /* sign */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00a4, 0xcf} /* sign */,
+ {0x00a5, 0xbe} /* sign */,
+ {0x00a6, 0xdd} /* bar */,
+ {0x00a7, 0xf5} /* sign */,
+ {0x00a8, 0xf9} /* diaeresis */,
+ {0x00a9, 0xb8} /* sign */,
+ {0x00aa, 0xa6} /* ordinal indicator */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00ad, 0xf0} /* hyphen */,
+ {0x00ae, 0xa9} /* sign */,
+ {0x00af, 0xee} /* macron */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b3, 0xfc} /* three */,
+ {0x00b4, 0xef} /* accent */,
+ {0x00b5, 0xe6} /* sign */,
+ {0x00b6, 0xf4} /* sign */,
+ {0x00b7, 0xfa} /* dot */,
+ {0x00b8, 0xf7} /* cedilla */,
+ {0x00b9, 0xfb} /* one */,
+ {0x00ba, 0xa7} /* ordinal indicator */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00be, 0xf3} /* fraction three quarters */,
+ {0x00bf, 0xa8} /* question mark */,
+ {0x00c0, 0xb7} /* capital letter a with grave */,
+ {0x00c1, 0xb5} /* capital letter a with acute */,
+ {0x00c2, 0xb6} /* capital letter a with circumflex */,
+ {0x00c3, 0xc7} /* capital letter a with tilde */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c5, 0x8f} /* capital letter a with ring above */,
+ {0x00c6, 0x92} /* capital letter ae */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c8, 0xd4} /* capital letter e with grave */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00ca, 0xd2} /* capital letter e with circumflex */,
+ {0x00cb, 0xd3} /* capital letter e with diaeresis */,
+ {0x00cc, 0xde} /* capital letter i with grave */,
+ {0x00cd, 0xd6} /* capital letter i with acute */,
+ {0x00ce, 0xd7} /* capital letter i with circumflex */,
+ {0x00cf, 0xd8} /* capital letter i with diaeresis */,
+ {0x00d0, 0xd1} /* capital letter eth (icelandic) */,
+ {0x00d1, 0xa5} /* capital letter n with tilde */,
+ {0x00d2, 0xe3} /* capital letter o with grave */,
+ {0x00d3, 0xe0} /* capital letter o with acute */,
+ {0x00d4, 0xe2} /* capital letter o with circumflex */,
+ {0x00d5, 0xe5} /* capital letter o with tilde */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00d7, 0x9e} /* sign */,
+ {0x00d8, 0x9d} /* capital letter o with stroke */,
+ {0x00d9, 0xeb} /* capital letter u with grave */,
+ {0x00da, 0xe9} /* capital letter u with acute */,
+ {0x00db, 0xea} /* capital letter u with circumflex */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00dd, 0xed} /* capital letter y with acute */,
+ {0x00de, 0xe8} /* capital letter thorn (icelandic) */,
+ {0x00df, 0xe1} /* small letter sharp s (german) */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e3, 0xc6} /* small letter a with tilde */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e5, 0x86} /* small letter a with ring above */,
+ {0x00e6, 0x91} /* small letter ae */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ec, 0x8d} /* small letter i with grave */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00ee, 0x8c} /* small letter i with circumflex */,
+ {0x00ef, 0x8b} /* small letter i with diaeresis */,
+ {0x00f0, 0xd0} /* small letter eth (icelandic) */,
+ {0x00f1, 0xa4} /* small letter n with tilde */,
+ {0x00f2, 0x95} /* small letter o with grave */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f5, 0xe4} /* small letter o with tilde */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00f8, 0x9b} /* small letter o with stroke */,
+ {0x00f9, 0x97} /* small letter u with grave */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fb, 0x96} /* small letter u with circumflex */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x00fd, 0xec} /* small letter y with acute */,
+ {0x00fe, 0xe7} /* small letter thorn (icelandic) */,
+ {0x00ff, 0x98} /* small letter y with diaeresis */,
+ {0x0131, 0xd5} /* small letter i dotless */,
+ {0x0192, 0x9f} /* minuscule latine f hameçon */,
+ {0x2017, 0xf2} /* low line */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm850_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm850_extra[cet_ucs4_to_ibm850_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm850 = /* defined in cet.h */
+{
+ cet_cs_name_ibm850, /* name of character set */
+ cet_cs_alias_ibm850, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm850, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm850, /* first non standard character */
+ cet_ucs4_cnt_ibm850, /* number of values in table */
+
+ cet_ucs4_to_ibm850_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm850_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm850_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x00ff, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x00d7, 0x0192,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x00ae, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x00c0,
+ 0x00a9, 0x2563, 0x2551, 0x2557, 0x255d, 0x00a2, 0x00a5, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x00e3, 0x00c3,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+ 0x00f0, 0x00d0, 0x00ca, 0x00cb, 0x00c8, 0x0131, 0x00cd, 0x00ce,
+ 0x00cf, 0x2518, 0x250c, 0x2588, 0x2584, 0x00a6, 0x00cc, 0x2580,
+ 0x00d3, 0x00df, 0x00d4, 0x00d2, 0x00f5, 0x00d5, 0x00b5, 0x00fe,
+ 0x00de, 0x00da, 0x00db, 0x00d9, 0x00fd, 0x00dd, 0x00af, 0x00b4,
+ 0x00ad, 0x00b1, 0x2017, 0x00be, 0x00b6, 0x00a7, 0x00f7, 0x00b8,
+ 0x00b0, 0x00a8, 0x00b7, 0x00b9, 0x00b3, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM851" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm851_h
+#define ibm851_h
+
+#define cet_cs_name_ibm851 "IBM851"
+
+const char *cet_cs_alias_ibm851[] =
+{
+ "IBM851/CR-LF", "851/CR-LF", "CP851/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm851 128
+#define cet_ucs4_cnt_ibm851 128
+
+const int cet_ucs4_map_ibm851[cet_ucs4_cnt_ibm851] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x0386, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x0388, 0x00c4, 0x0389,
+ 0x038a, -1, 0x038c, 0x00f4, 0x00f6, 0x038e, 0x00fb, 0x00f9,
+ 0x038f, 0x00d6, 0x00dc, 0x03ac, 0x00a3, 0x03ad, 0x03ae, 0x03af,
+ 0x03ca, 0x0390, 0x03cc, 0x03cd, 0x0391, 0x0392, 0x0393, 0x0394,
+ 0x0395, 0x0396, 0x0397, 0x00bd, 0x0398, 0x0399, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x039a, 0x039b, 0x039d,
+ 0x039c, 0x2563, 0x2551, 0x2557, 0x255d, 0x039e, 0x039f, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x03a0, 0x03a1,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x03a3,
+ 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03b1, 0x03b2,
+ 0x03b3, 0x2518, 0x250c, 0x2588, 0x2584, 0x03b4, 0x03b5, 0x2580,
+ 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd,
+ 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3, 0x03c2, 0x03c4, 0x00b4,
+ 0x00ad, 0x00b1, 0x03c5, 0x03c6, 0x03c7, 0x00a7, 0x03c8, 0x02db,
+ 0x00b0, 0x00a8, 0x03c9, 0x03cb, 0x03b0, 0x03ce, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm851_ct 127
+
+const cet_ucs4_link_t cet_ucs4_to_ibm851_links[cet_ucs4_to_ibm851_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00a7, 0xf5} /* sign */,
+ {0x00a8, 0xf9} /* diaeresis */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ad, 0xf0} /* hyphen */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b4, 0xef} /* accent */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ee, 0x8c} /* small letter i with circumflex */,
+ {0x00ef, 0x8b} /* small letter i with diaeresis */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f9, 0x97} /* small letter u with grave */,
+ {0x00fb, 0x96} /* small letter u with circumflex */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x02db, 0xf7} /* ogonek */,
+ {0x0386, 0x86} /* capital letter alpha with acute */,
+ {0x0388, 0x8d} /* capital letter epsilon with acute */,
+ {0x0389, 0x8f} /* capital letter eta with acute */,
+ {0x038a, 0x90} /* capital letter iota with acute */,
+ {0x038c, 0x92} /* capital letter omicron with acute */,
+ {0x038e, 0x95} /* capital letter upsilon with acute */,
+ {0x038f, 0x98} /* capital letter omega with acute */,
+ {0x0390, 0xa1} /* small letter iota with acute and diaeresis */,
+ {0x0391, 0xa4} /* capital letter alpha */,
+ {0x0392, 0xa5} /* capital letter beta */,
+ {0x0393, 0xa6} /* capital letter gamma */,
+ {0x0394, 0xa7} /* capital letter delta */,
+ {0x0395, 0xa8} /* capital letter epsilon */,
+ {0x0396, 0xa9} /* capital letter zeta */,
+ {0x0397, 0xaa} /* capital letter eta */,
+ {0x0398, 0xac} /* capital letter theta */,
+ {0x0399, 0xad} /* capital letter iota */,
+ {0x039a, 0xb5} /* capital letter kappa */,
+ {0x039b, 0xb6} /* capital letter lamda */,
+ {0x039c, 0xb8} /* capital letter mu */,
+ {0x039d, 0xb7} /* capital letter nu */,
+ {0x039e, 0xbd} /* capital letter xi */,
+ {0x039f, 0xbe} /* capital letter omicron */,
+ {0x03a0, 0xc6} /* capital letter pi */,
+ {0x03a1, 0xc7} /* capital letter rho */,
+ {0x03a3, 0xcf} /* capital letter sigma */,
+ {0x03a4, 0xd0} /* capital letter tau */,
+ {0x03a5, 0xd1} /* capital letter upsilon */,
+ {0x03a6, 0xd2} /* capital letter phi */,
+ {0x03a7, 0xd3} /* capital letter chi */,
+ {0x03a8, 0xd4} /* capital letter psi */,
+ {0x03a9, 0xd5} /* capital letter omega */,
+ {0x03ac, 0x9b} /* small letter alpha with acute */,
+ {0x03ad, 0x9d} /* small letter epsilon with acute */,
+ {0x03ae, 0x9e} /* small letter eta with acute */,
+ {0x03af, 0x9f} /* small letter iota with acute */,
+ {0x03b0, 0xfc} /* small letter upsilon with acute and diaeresis */,
+ {0x03b1, 0xd6} /* small letter alpha */,
+ {0x03b2, 0xd7} /* small letter beta */,
+ {0x03b3, 0xd8} /* small letter gamma */,
+ {0x03b4, 0xdd} /* small letter delta */,
+ {0x03b5, 0xde} /* small letter epsilon */,
+ {0x03b6, 0xe0} /* small letter zeta */,
+ {0x03b7, 0xe1} /* small letter eta */,
+ {0x03b8, 0xe2} /* small letter theta */,
+ {0x03b9, 0xe3} /* small letter iota */,
+ {0x03ba, 0xe4} /* small letter kappa */,
+ {0x03bb, 0xe5} /* small letter lamda */,
+ {0x03bc, 0xe6} /* small letter mu */,
+ {0x03bd, 0xe7} /* small letter nu */,
+ {0x03be, 0xe8} /* small letter xi */,
+ {0x03bf, 0xe9} /* small letter omicron */,
+ {0x03c0, 0xea} /* small letter pi */,
+ {0x03c1, 0xeb} /* small letter rho */,
+ {0x03c2, 0xed} /* small letter final sigma */,
+ {0x03c3, 0xec} /* small letter sigma */,
+ {0x03c4, 0xee} /* small letter tau */,
+ {0x03c5, 0xf2} /* small letter upsilon */,
+ {0x03c6, 0xf3} /* small letter phi */,
+ {0x03c7, 0xf4} /* small letter chi */,
+ {0x03c8, 0xf6} /* small letter psi */,
+ {0x03c9, 0xfa} /* small letter omega */,
+ {0x03ca, 0xa0} /* small letter iota with diaeresis */,
+ {0x03cb, 0xfb} /* small letter upsilon with diaeresis */,
+ {0x03cc, 0xa2} /* small letter omicron with acute */,
+ {0x03cd, 0xa3} /* small letter upsilon with acute */,
+ {0x03ce, 0xfd} /* small letter omega with acute */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm851_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm851_extra[cet_ucs4_to_ibm851_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm851 = /* defined in cet.h */
+{
+ cet_cs_name_ibm851, /* name of character set */
+ cet_cs_alias_ibm851, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm851, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm851, /* first non standard character */
+ cet_ucs4_cnt_ibm851, /* number of values in table */
+
+ cet_ucs4_to_ibm851_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm851_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm851_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x0386, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x0388, 0x00c4, 0x0389,
+ 0x038a, -1, 0x038c, 0x00f4, 0x00f6, 0x038e, 0x00fb, 0x00f9,
+ 0x038f, 0x00d6, 0x00dc, 0x03ac, 0x00a3, 0x03ad, 0x03ae, 0x03af,
+ 0x03ca, 0x0390, 0x03cc, 0x03cd, 0x0391, 0x0392, 0x0393, 0x0394,
+ 0x0395, 0x0396, 0x0397, 0x00bd, 0x0398, 0x0399, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x039a, 0x039b, 0x039d,
+ 0x039c, 0x2563, 0x2551, 0x2557, 0x255d, 0x039e, 0x039f, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x03a0, 0x03a1,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x03a3,
+ 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03b1, 0x03b2,
+ 0x03b3, 0x2518, 0x250c, 0x2588, 0x2584, 0x03b4, 0x03b5, 0x2580,
+ 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd,
+ 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3, 0x03c2, 0x03c4, 0x00b4,
+ 0x00ad, 0x00b1, 0x03c5, 0x03c6, 0x03c7, 0x00a7, 0x03c8, 0x02db,
+ 0x00b0, 0x00a8, 0x03c9, 0x03cb, 0x03b0, 0x03ce, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM852" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm852_h
+#define ibm852_h
+
+#define cet_cs_name_ibm852 "IBM852"
+
+const char *cet_cs_alias_ibm852[] =
+{
+ "IBM852/CR-LF", "852/CR-LF", "CP852/CR-LF", "pcl2",
+ "pclatin2", NULL
+};
+
+#define cet_ucs4_ofs_ibm852 128
+#define cet_ucs4_cnt_ibm852 128
+
+const int cet_ucs4_map_ibm852[cet_ucs4_cnt_ibm852] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x016f, 0x0107, 0x00e7,
+ 0x0142, 0x00eb, 0x0150, 0x0151, 0x00ee, 0x0179, 0x00c4, 0x0106,
+ 0x00c9, 0x0139, 0x013a, 0x00f4, 0x00f6, 0x013d, 0x013e, 0x015a,
+ 0x015b, 0x00d6, 0x00dc, 0x0164, 0x0165, 0x0141, 0x00d7, 0x010d,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x0104, 0x0105, 0x017d, 0x017e,
+ 0x0118, 0x0119, 0x00ac, 0x017a, 0x010c, 0x015f, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x011a,
+ 0x015e, 0x2563, 0x2551, 0x2557, 0x255d, 0x017b, 0x017c, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x0102, 0x0103,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+ 0x0111, 0x0110, 0x010e, 0x00cb, 0x010f, 0x0147, 0x00cd, 0x00ce,
+ 0x011b, 0x2518, 0x250c, 0x2588, 0x2584, 0x0162, 0x016e, 0x2580,
+ 0x00d3, 0x00df, 0x00d4, 0x0143, 0x0144, 0x0148, 0x0160, 0x0161,
+ 0x0154, 0x00da, 0x0155, 0x0170, 0x00fd, 0x00dd, 0x0163, 0x00b4,
+ 0x00ad, 0x02dd, 0x02db, 0x02c7, 0x02d8, 0x00a7, 0x00f7, 0x00b8,
+ 0x00b0, 0x00a8, 0x02d9, 0x0171, 0x0158, 0x0159, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm852_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_ibm852_links[cet_ucs4_to_ibm852_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a4, 0xcf} /* sign */,
+ {0x00a7, 0xf5} /* sign */,
+ {0x00a8, 0xf9} /* diaeresis */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00ad, 0xf0} /* hyphen */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b4, 0xef} /* accent */,
+ {0x00b8, 0xf7} /* cedilla */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00c1, 0xb5} /* capital letter a with acute */,
+ {0x00c2, 0xb6} /* capital letter a with circumflex */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00cb, 0xd3} /* capital letter e with diaeresis */,
+ {0x00cd, 0xd6} /* capital letter i with acute */,
+ {0x00ce, 0xd7} /* capital letter i with circumflex */,
+ {0x00d3, 0xe0} /* capital letter o with acute */,
+ {0x00d4, 0xe2} /* capital letter o with circumflex */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00d7, 0x9e} /* sign */,
+ {0x00da, 0xe9} /* capital letter u with acute */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00dd, 0xed} /* capital letter y with acute */,
+ {0x00df, 0xe1} /* small letter sharp s (german) */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00ee, 0x8c} /* small letter i with circumflex */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x00fd, 0xec} /* small letter y with acute */,
+ {0x0102, 0xc6} /* capital letter a with breve */,
+ {0x0103, 0xc7} /* small letter a with breve */,
+ {0x0104, 0xa4} /* capital letter a with ogonek */,
+ {0x0105, 0xa5} /* small letter a with ogonek */,
+ {0x0106, 0x8f} /* capital letter c with acute */,
+ {0x0107, 0x86} /* small letter c with acute */,
+ {0x010c, 0xac} /* capital letter c with caron */,
+ {0x010d, 0x9f} /* small letter c with caron */,
+ {0x010e, 0xd2} /* capital letter d with caron */,
+ {0x010f, 0xd4} /* small letter d with caron */,
+ {0x0110, 0xd1} /* capital letter d with stroke */,
+ {0x0111, 0xd0} /* small letter d with stroke */,
+ {0x0118, 0xa8} /* capital letter e with ogonek */,
+ {0x0119, 0xa9} /* small letter e with ogonek */,
+ {0x011a, 0xb7} /* capital letter e with caron */,
+ {0x011b, 0xd8} /* small letter e with caron */,
+ {0x0139, 0x91} /* capital letter l with acute */,
+ {0x013a, 0x92} /* small letter l with acute */,
+ {0x013d, 0x95} /* capital letter l with caron */,
+ {0x013e, 0x96} /* small letter l with caron */,
+ {0x0141, 0x9d} /* capital letter l with stroke */,
+ {0x0142, 0x88} /* small letter l with stroke */,
+ {0x0143, 0xe3} /* capital letter n with acute */,
+ {0x0144, 0xe4} /* small letter n with acute */,
+ {0x0147, 0xd5} /* capital letter n with caron */,
+ {0x0148, 0xe5} /* small letter n with caron */,
+ {0x0150, 0x8a} /* capital letter o with double acute */,
+ {0x0151, 0x8b} /* small letter o with double acute */,
+ {0x0154, 0xe8} /* capital letter r with acute */,
+ {0x0155, 0xea} /* small letter r with acute */,
+ {0x0158, 0xfc} /* capital letter r with caron */,
+ {0x0159, 0xfd} /* small letter r with caron */,
+ {0x015a, 0x97} /* capital letter s with acute */,
+ {0x015b, 0x98} /* small letter s with acute */,
+ {0x015e, 0xb8} /* capital letter s with cedilla */,
+ {0x015f, 0xad} /* small letter s with cedilla */,
+ {0x0160, 0xe6} /* capital letter s with caron */,
+ {0x0161, 0xe7} /* small letter s with caron */,
+ {0x0162, 0xdd} /* capital letter t with cedilla */,
+ {0x0163, 0xee} /* small letter t with cedilla */,
+ {0x0164, 0x9b} /* capital letter t with caron */,
+ {0x0165, 0x9c} /* small letter t with caron */,
+ {0x016e, 0xde} /* capital letter u with ring above */,
+ {0x016f, 0x85} /* small letter u with ring above */,
+ {0x0170, 0xeb} /* capital letter u with double acute */,
+ {0x0171, 0xfb} /* small letter u with double acute */,
+ {0x0179, 0x8d} /* capital letter z with acute */,
+ {0x017a, 0xab} /* small letter z with acute */,
+ {0x017b, 0xbd} /* capital letter z with dot above */,
+ {0x017c, 0xbe} /* small letter z with dot above */,
+ {0x017d, 0xa6} /* capital letter z with caron */,
+ {0x017e, 0xa7} /* small letter z with caron */,
+ {0x02c7, 0xf3} /* caron */,
+ {0x02d8, 0xf4} /* breve */,
+ {0x02d9, 0xfa} /* above */,
+ {0x02db, 0xf2} /* ogonek */,
+ {0x02dd, 0xf1} /* acute accent */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm852_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm852_extra[cet_ucs4_to_ibm852_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm852 = /* defined in cet.h */
+{
+ cet_cs_name_ibm852, /* name of character set */
+ cet_cs_alias_ibm852, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm852, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm852, /* first non standard character */
+ cet_ucs4_cnt_ibm852, /* number of values in table */
+
+ cet_ucs4_to_ibm852_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm852_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm852_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x016f, 0x0107, 0x00e7,
+ 0x0142, 0x00eb, 0x0150, 0x0151, 0x00ee, 0x0179, 0x00c4, 0x0106,
+ 0x00c9, 0x0139, 0x013a, 0x00f4, 0x00f6, 0x013d, 0x013e, 0x015a,
+ 0x015b, 0x00d6, 0x00dc, 0x0164, 0x0165, 0x0141, 0x00d7, 0x010d,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x0104, 0x0105, 0x017d, 0x017e,
+ 0x0118, 0x0119, 0x00ac, 0x017a, 0x010c, 0x015f, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x011a,
+ 0x015e, 0x2563, 0x2551, 0x2557, 0x255d, 0x017b, 0x017c, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x0102, 0x0103,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+ 0x0111, 0x0110, 0x010e, 0x00cb, 0x010f, 0x0147, 0x00cd, 0x00ce,
+ 0x011b, 0x2518, 0x250c, 0x2588, 0x2584, 0x0162, 0x016e, 0x2580,
+ 0x00d3, 0x00df, 0x00d4, 0x0143, 0x0144, 0x0148, 0x0160, 0x0161,
+ 0x0154, 0x00da, 0x0155, 0x0170, 0x00fd, 0x00dd, 0x0163, 0x00b4,
+ 0x00ad, 0x02dd, 0x02db, 0x02c7, 0x02d8, 0x00a7, 0x00f7, 0x00b8,
+ 0x00b0, 0x00a8, 0x02d9, 0x0171, 0x0158, 0x0159, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM855" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm855_h
+#define ibm855_h
+
+#define cet_cs_name_ibm855 "IBM855"
+
+const char *cet_cs_alias_ibm855[] =
+{
+ "IBM855/CR-LF", "855/CR-LF", "CP855/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm855 128
+#define cet_ucs4_cnt_ibm855 128
+
+const int cet_ucs4_map_ibm855[cet_ucs4_cnt_ibm855] =
+{
+ 0x0452, 0x0402, 0x0453, 0x0403, 0x0451, 0x0401, 0x0454, 0x0404,
+ 0x0455, 0x0405, 0x0456, 0x0406, 0x0457, 0x0407, 0x0458, 0x0408,
+ 0x0459, 0x0409, 0x045a, 0x040a, 0x045b, 0x0093, 0x045c, 0x040c,
+ 0x045e, 0x040e, 0x045f, 0x040f, 0x044e, 0x042e, 0x044a, 0x042a,
+ 0x0430, 0x0410, 0x0431, 0x0411, 0x0446, 0x0426, 0x0434, 0x0414,
+ 0x0435, 0x0415, 0x0444, 0x0424, 0x0433, 0x0413, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x0445, 0x0425, 0x0438,
+ 0x0418, 0x2563, 0x2551, 0x2557, 0x255d, 0x0439, 0x0419, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x043a, 0x041a,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+ 0x043b, 0x041b, 0x043c, 0x041c, 0x043d, 0x041d, 0x043e, 0x041e,
+ 0x043f, 0x2518, 0x250c, 0x2588, 0x2584, 0x041f, 0x044f, 0x2580,
+ 0x042f, 0x0440, 0x0420, 0x0441, 0x0421, 0x0442, 0x0422, 0x0443,
+ 0x0423, 0x0436, 0x0416, 0x0432, 0x0412, 0x044c, 0x042c, 0x00b4,
+ 0x00ad, 0x044b, 0x042b, 0x0437, 0x0417, 0x0448, 0x0428, 0x044d,
+ 0x042d, 0x0449, 0x0429, 0x0447, 0x0427, -1, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm855_ct 127
+
+const cet_ucs4_link_t cet_ucs4_to_ibm855_links[cet_ucs4_to_ibm855_ct] =
+{
+ {0x0093, 0x95} /* transmit state (sts) */,
+ {0x00a0, 0xff} /* space */,
+ {0x00a4, 0xcf} /* sign */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ad, 0xf0} /* hyphen */,
+ {0x00b4, 0xef} /* accent */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x0401, 0x85} /* capital letter io */,
+ {0x0402, 0x81} /* capital letter dje (serbocroatian) */,
+ {0x0403, 0x83} /* capital letter gje (macedonian) */,
+ {0x0404, 0x87} /* capital letter ukrainian ie */,
+ {0x0405, 0x89} /* capital letter dze (macedonian) */,
+ {0x0406, 0x8b} /* capital letter byelorussian-ukrainian i */,
+ {0x0407, 0x8d} /* capital letter yi (ukrainian) */,
+ {0x0408, 0x8f} /* capital letter je */,
+ {0x0409, 0x91} /* capital letter lje */,
+ {0x040a, 0x93} /* capital letter nje */,
+ {0x040c, 0x97} /* capital letter kje (macedonian) */,
+ {0x040e, 0x99} /* capital letter short u (byelorussian) */,
+ {0x040f, 0x9b} /* capital letter dzhe */,
+ {0x0410, 0xa1} /* capital letter a */,
+ {0x0411, 0xa3} /* capital letter be */,
+ {0x0412, 0xec} /* capital letter ve */,
+ {0x0413, 0xad} /* capital letter ghe */,
+ {0x0414, 0xa7} /* capital letter de */,
+ {0x0415, 0xa9} /* capital letter ie */,
+ {0x0416, 0xea} /* capital letter zhe */,
+ {0x0417, 0xf4} /* capital letter ze */,
+ {0x0418, 0xb8} /* capital letter i */,
+ {0x0419, 0xbe} /* capital letter short i */,
+ {0x041a, 0xc7} /* capital letter ka */,
+ {0x041b, 0xd1} /* capital letter el */,
+ {0x041c, 0xd3} /* capital letter em */,
+ {0x041d, 0xd5} /* capital letter en */,
+ {0x041e, 0xd7} /* capital letter o */,
+ {0x041f, 0xdd} /* capital letter pe */,
+ {0x0420, 0xe2} /* capital letter er */,
+ {0x0421, 0xe4} /* capital letter es */,
+ {0x0422, 0xe6} /* capital letter te */,
+ {0x0423, 0xe8} /* capital letter u */,
+ {0x0424, 0xab} /* capital letter ef */,
+ {0x0425, 0xb6} /* capital letter ha */,
+ {0x0426, 0xa5} /* capital letter tse */,
+ {0x0427, 0xfc} /* capital letter che */,
+ {0x0428, 0xf6} /* capital letter sha */,
+ {0x0429, 0xfa} /* capital letter shcha */,
+ {0x042a, 0x9f} /* capital letter hard sign */,
+ {0x042b, 0xf2} /* capital letter yeru */,
+ {0x042c, 0xee} /* capital letter soft sign */,
+ {0x042d, 0xf8} /* capital letter e */,
+ {0x042e, 0x9d} /* capital letter yu */,
+ {0x042f, 0xe0} /* capital letter ya */,
+ {0x0430, 0xa0} /* small letter a */,
+ {0x0431, 0xa2} /* small letter be */,
+ {0x0432, 0xeb} /* small letter ve */,
+ {0x0433, 0xac} /* small letter ghe */,
+ {0x0434, 0xa6} /* small letter de */,
+ {0x0435, 0xa8} /* small letter ie */,
+ {0x0436, 0xe9} /* small letter zhe */,
+ {0x0437, 0xf3} /* small letter ze */,
+ {0x0438, 0xb7} /* small letter i */,
+ {0x0439, 0xbd} /* small letter short i */,
+ {0x043a, 0xc6} /* small letter ka */,
+ {0x043b, 0xd0} /* small letter el */,
+ {0x043c, 0xd2} /* small letter em */,
+ {0x043d, 0xd4} /* small letter en */,
+ {0x043e, 0xd6} /* small letter o */,
+ {0x043f, 0xd8} /* small letter pe */,
+ {0x0440, 0xe1} /* small letter er */,
+ {0x0441, 0xe3} /* small letter es */,
+ {0x0442, 0xe5} /* small letter te */,
+ {0x0443, 0xe7} /* small letter u */,
+ {0x0444, 0xaa} /* small letter ef */,
+ {0x0445, 0xb5} /* small letter ha */,
+ {0x0446, 0xa4} /* small letter tse */,
+ {0x0447, 0xfb} /* small letter che */,
+ {0x0448, 0xf5} /* small letter sha */,
+ {0x0449, 0xf9} /* small letter shcha */,
+ {0x044a, 0x9e} /* small letter hard sign */,
+ {0x044b, 0xf1} /* small letter yeru */,
+ {0x044c, 0xed} /* small letter soft sign */,
+ {0x044d, 0xf7} /* small letter e */,
+ {0x044e, 0x9c} /* small letter yu */,
+ {0x044f, 0xde} /* small letter ya */,
+ {0x0451, 0x84} /* small letter io */,
+ {0x0452, 0x80} /* small letter dje (serbocroatian) */,
+ {0x0453, 0x82} /* small letter gje (macedonian) */,
+ {0x0454, 0x86} /* small letter ukrainian ie */,
+ {0x0455, 0x88} /* small letter dze (macedonian) */,
+ {0x0456, 0x8a} /* small letter byelorussian-ukrainian i */,
+ {0x0457, 0x8c} /* small letter yi (ukrainian) */,
+ {0x0458, 0x8e} /* small letter je */,
+ {0x0459, 0x90} /* small letter lje */,
+ {0x045a, 0x92} /* small letter nje */,
+ {0x045b, 0x94} /* small letter tshe (serbocroatian) */,
+ {0x045c, 0x96} /* small letter kje (macedonian) */,
+ {0x045e, 0x98} /* small letter short u (byelorussian) */,
+ {0x045f, 0x9a} /* small letter dzhe */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm855_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm855_extra[cet_ucs4_to_ibm855_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm855 = /* defined in cet.h */
+{
+ cet_cs_name_ibm855, /* name of character set */
+ cet_cs_alias_ibm855, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm855, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm855, /* first non standard character */
+ cet_ucs4_cnt_ibm855, /* number of values in table */
+
+ cet_ucs4_to_ibm855_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm855_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm855_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0452, 0x0402, 0x0453, 0x0403, 0x0451, 0x0401, 0x0454, 0x0404,
+ 0x0455, 0x0405, 0x0456, 0x0406, 0x0457, 0x0407, 0x0458, 0x0408,
+ 0x0459, 0x0409, 0x045a, 0x040a, 0x045b, 0x0093, 0x045c, 0x040c,
+ 0x045e, 0x040e, 0x045f, 0x040f, 0x044e, 0x042e, 0x044a, 0x042a,
+ 0x0430, 0x0410, 0x0431, 0x0411, 0x0446, 0x0426, 0x0434, 0x0414,
+ 0x0435, 0x0415, 0x0444, 0x0424, 0x0433, 0x0413, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x0445, 0x0425, 0x0438,
+ 0x0418, 0x2563, 0x2551, 0x2557, 0x255d, 0x0439, 0x0419, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x043a, 0x041a,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+ 0x043b, 0x041b, 0x043c, 0x041c, 0x043d, 0x041d, 0x043e, 0x041e,
+ 0x043f, 0x2518, 0x250c, 0x2588, 0x2584, 0x041f, 0x044f, 0x2580,
+ 0x042f, 0x0440, 0x0420, 0x0441, 0x0421, 0x0442, 0x0422, 0x0443,
+ 0x0423, 0x0436, 0x0416, 0x0432, 0x0412, 0x044c, 0x042c, 0x00b4,
+ 0x00ad, 0x044b, 0x042b, 0x0437, 0x0417, 0x0448, 0x0428, 0x044d,
+ 0x042d, 0x0449, 0x0429, 0x0447, 0x0427, -1, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM857" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm857_h
+#define ibm857_h
+
+#define cet_cs_name_ibm857 "IBM857"
+
+const char *cet_cs_alias_ibm857[] =
+{
+ "IBM857/CR-LF", "857/CR-LF", "CP857/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm857 128
+#define cet_ucs4_cnt_ibm857 128
+
+const int cet_ucs4_map_ibm857[cet_ucs4_cnt_ibm857] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x0131, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x0130, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x015e, 0x015f,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x011e, 0x011f,
+ 0x00bf, 0x00ae, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x00c0,
+ 0x00a9, 0x2563, 0x2551, 0x2557, 0x255d, 0x00a2, 0x00a5, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x00e3, 0x00c3,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+ 0x00ba, 0x00aa, 0x00ca, 0x00cb, 0x00c8, -1, 0x00cd, 0x00ce,
+ 0x00cf, 0x2518, 0x250c, 0x2588, 0x2584, 0x00a6, 0x00cc, 0x2580,
+ 0x00d3, 0x00df, 0x00d4, 0x00d2, 0x00f5, 0x00d5, 0x00b5, -1,
+ 0x00d7, 0x00da, 0x00db, 0x00d9, 0x00ec, 0x00ff, 0x2014, 0x00b4,
+ 0x00ad, 0x00b1, -1, 0x00be, 0x00b6, 0x00a7, 0x00f7, 0x02db,
+ 0x00b0, 0x00a8, 0x02d9, 0x00b9, 0x00b3, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm857_ct 124
+
+const cet_ucs4_link_t cet_ucs4_to_ibm857_links[cet_ucs4_to_ibm857_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a1, 0xad} /* exclamation mark */,
+ {0x00a2, 0xbd} /* sign */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00a4, 0xcf} /* sign */,
+ {0x00a5, 0xbe} /* sign */,
+ {0x00a6, 0xdd} /* bar */,
+ {0x00a7, 0xf5} /* sign */,
+ {0x00a8, 0xf9} /* diaeresis */,
+ {0x00a9, 0xb8} /* sign */,
+ {0x00aa, 0xd1} /* ordinal indicator */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00ad, 0xf0} /* hyphen */,
+ {0x00ae, 0xa9} /* sign */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b3, 0xfc} /* three */,
+ {0x00b4, 0xef} /* accent */,
+ {0x00b5, 0xe6} /* sign */,
+ {0x00b6, 0xf4} /* sign */,
+ {0x00b9, 0xfb} /* one */,
+ {0x00ba, 0xd0} /* ordinal indicator */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00be, 0xf3} /* fraction three quarters */,
+ {0x00bf, 0xa8} /* question mark */,
+ {0x00c0, 0xb7} /* capital letter a with grave */,
+ {0x00c1, 0xb5} /* capital letter a with acute */,
+ {0x00c2, 0xb6} /* capital letter a with circumflex */,
+ {0x00c3, 0xc7} /* capital letter a with tilde */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c5, 0x8f} /* capital letter a with ring above */,
+ {0x00c6, 0x92} /* capital letter ae */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c8, 0xd4} /* capital letter e with grave */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00ca, 0xd2} /* capital letter e with circumflex */,
+ {0x00cb, 0xd3} /* capital letter e with diaeresis */,
+ {0x00cc, 0xde} /* capital letter i with grave */,
+ {0x00cd, 0xd6} /* capital letter i with acute */,
+ {0x00ce, 0xd7} /* capital letter i with circumflex */,
+ {0x00cf, 0xd8} /* capital letter i with diaeresis */,
+ {0x00d1, 0xa5} /* capital letter n with tilde */,
+ {0x00d2, 0xe3} /* capital letter o with grave */,
+ {0x00d3, 0xe0} /* capital letter o with acute */,
+ {0x00d4, 0xe2} /* capital letter o with circumflex */,
+ {0x00d5, 0xe5} /* capital letter o with tilde */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00d7, 0xe8} /* sign */,
+ {0x00d8, 0x9d} /* capital letter o with stroke */,
+ {0x00d9, 0xeb} /* capital letter u with grave */,
+ {0x00da, 0xe9} /* capital letter u with acute */,
+ {0x00db, 0xea} /* capital letter u with circumflex */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00df, 0xe1} /* small letter sharp s (german) */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e3, 0xc6} /* small letter a with tilde */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e5, 0x86} /* small letter a with ring above */,
+ {0x00e6, 0x91} /* small letter ae */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00ee, 0x8c} /* small letter i with circumflex */,
+ {0x00ef, 0x8b} /* small letter i with diaeresis */,
+ {0x00f1, 0xa4} /* small letter n with tilde */,
+ {0x00f2, 0x95} /* small letter o with grave */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f5, 0xe4} /* small letter o with tilde */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00f8, 0x9b} /* small letter o with stroke */,
+ {0x00f9, 0x97} /* small letter u with grave */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fb, 0x96} /* small letter u with circumflex */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x00ff, 0xed} /* small letter y with diaeresis */,
+ {0x011e, 0xa6} /* capital letter g with breve */,
+ {0x011f, 0xa7} /* small letter g with breve */,
+ {0x0130, 0x98} /* capital letter i with dot above */,
+ {0x0131, 0x8d} /* small letter i dotless */,
+ {0x015e, 0x9e} /* capital letter s with cedilla */,
+ {0x015f, 0x9f} /* small letter s with cedilla */,
+ {0x02d9, 0xfa} /* above */,
+ {0x02db, 0xf7} /* ogonek */,
+ {0x2014, 0xee} /* dash */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm857_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm857_extra[cet_ucs4_to_ibm857_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm857 = /* defined in cet.h */
+{
+ cet_cs_name_ibm857, /* name of character set */
+ cet_cs_alias_ibm857, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm857, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm857, /* first non standard character */
+ cet_ucs4_cnt_ibm857, /* number of values in table */
+
+ cet_ucs4_to_ibm857_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm857_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm857_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x0131, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x0130, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x015e, 0x015f,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x011e, 0x011f,
+ 0x00bf, 0x00ae, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x00c1, 0x00c2, 0x00c0,
+ 0x00a9, 0x2563, 0x2551, 0x2557, 0x255d, 0x00a2, 0x00a5, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x00e3, 0x00c3,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x00a4,
+ 0x00ba, 0x00aa, 0x00ca, 0x00cb, 0x00c8, -1, 0x00cd, 0x00ce,
+ 0x00cf, 0x2518, 0x250c, 0x2588, 0x2584, 0x00a6, 0x00cc, 0x2580,
+ 0x00d3, 0x00df, 0x00d4, 0x00d2, 0x00f5, 0x00d5, 0x00b5, -1,
+ 0x00d7, 0x00da, 0x00db, 0x00d9, 0x00ec, 0x00ff, 0x2014, 0x00b4,
+ 0x00ad, 0x00b1, -1, 0x00be, 0x00b6, 0x00a7, 0x00f7, 0x02db,
+ 0x00b0, 0x00a8, 0x02d9, 0x00b9, 0x00b3, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM860" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm860_h
+#define ibm860_h
+
+#define cet_cs_name_ibm860 "IBM860"
+
+const char *cet_cs_alias_ibm860[] =
+{
+ "IBM860/CR-LF", "860/CR-LF", "CP860/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm860 128
+#define cet_ucs4_cnt_ibm860 128
+
+const int cet_ucs4_map_ibm860[cet_ucs4_cnt_ibm860] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e3, 0x00e0, 0x00c1, 0x00e7,
+ 0x00ea, 0x00ca, 0x00e8, 0x00ce, 0x00d4, 0x00ec, 0x00c3, 0x00c2,
+ 0x00c9, 0x00c0, 0x00c8, 0x00f4, 0x00f5, 0x00f2, 0x00da, 0x00f9,
+ 0x00cc, 0x00d5, 0x00dc, 0x00a2, 0x00a3, 0x00d9, 0x20a7, 0x00d2,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x00d3, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm860_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_ibm860_links[cet_ucs4_to_ibm860_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a1, 0xad} /* exclamation mark */,
+ {0x00a2, 0x9b} /* sign */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00aa, 0xa6} /* ordinal indicator */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b5, 0xe6} /* sign */,
+ {0x00b7, 0xf9} /* dot */,
+ {0x00ba, 0xa7} /* ordinal indicator */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00bf, 0xa8} /* question mark */,
+ {0x00c0, 0x91} /* capital letter a with grave */,
+ {0x00c1, 0x86} /* capital letter a with acute */,
+ {0x00c2, 0x8f} /* capital letter a with circumflex */,
+ {0x00c3, 0x8e} /* capital letter a with tilde */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c8, 0x92} /* capital letter e with grave */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00ca, 0x89} /* capital letter e with circumflex */,
+ {0x00cc, 0x98} /* capital letter i with grave */,
+ {0x00ce, 0x8b} /* capital letter i with circumflex */,
+ {0x00d1, 0xa5} /* capital letter n with tilde */,
+ {0x00d2, 0x9f} /* capital letter o with grave */,
+ {0x00d3, 0xa9} /* capital letter o with acute */,
+ {0x00d4, 0x8c} /* capital letter o with circumflex */,
+ {0x00d5, 0x99} /* capital letter o with tilde */,
+ {0x00d9, 0x9d} /* capital letter u with grave */,
+ {0x00da, 0x96} /* capital letter u with acute */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00df, 0xe1} /* small letter sharp s (german) */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e3, 0x84} /* small letter a with tilde */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00ec, 0x8d} /* small letter i with grave */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00f1, 0xa4} /* small letter n with tilde */,
+ {0x00f2, 0x95} /* small letter o with grave */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f5, 0x94} /* small letter o with tilde */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00f9, 0x97} /* small letter u with grave */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x0393, 0xe2} /* capital letter gamma */,
+ {0x0398, 0xe9} /* capital letter theta */,
+ {0x03a3, 0xe4} /* capital letter sigma */,
+ {0x03a6, 0xe8} /* capital letter phi */,
+ {0x03a9, 0xea} /* capital letter omega */,
+ {0x03b1, 0xe0} /* small letter alpha */,
+ {0x03b4, 0xeb} /* small letter delta */,
+ {0x03b5, 0xee} /* small letter epsilon */,
+ {0x03c0, 0xe3} /* small letter pi */,
+ {0x03c3, 0xe5} /* small letter sigma */,
+ {0x03c4, 0xe7} /* small letter tau */,
+ {0x03c6, 0xed} /* small letter phi */,
+ {0x2022, 0xfa} /* puce */,
+ {0x207f, 0xfc} /* latin small letter n */,
+ {0x20a7, 0x9e} /* sign */,
+ {0x221a, 0xfb} /* root */,
+ {0x221e, 0xec} /* infinity */,
+ {0x2229, 0xef} /* intersection */,
+ {0x2248, 0xf7} /* equal to */,
+ {0x2261, 0xf0} /* to */,
+ {0x2264, 0xf3} /* or equal to */,
+ {0x2265, 0xf2} /* or equal to */,
+ {0x2320, 0xf4} /* half integral */,
+ {0x2321, 0xf5} /* half integral */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2552, 0xd5} /* drawings down light and right heavy */,
+ {0x2553, 0xd6} /* drawings down heavy and right light */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2555, 0xb8} /* drawings down light and left heavy */,
+ {0x2556, 0xb7} /* drawings down heavy and left light */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x2558, 0xd4} /* drawings up light and right heavy */,
+ {0x2559, 0xd3} /* drawings up heavy and right light */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255b, 0xbe} /* drawings up light and left heavy */,
+ {0x255c, 0xbd} /* drawings up heavy and left light */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x255e, 0xc6} /* drawings vertical light and right heavy */,
+ {0x255f, 0xc7} /* drawings vertical heavy and right light */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2561, 0xb5} /* drawings vertical light and left heavy */,
+ {0x2562, 0xb6} /* drawings vertical heavy and left light */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2564, 0xd1} /* drawings down light and horizontal heavy */,
+ {0x2565, 0xd2} /* drawings down heavy and horizontal light */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2567, 0xcf} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xd0} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256a, 0xd8} /* drawings vertical light and horizontal heavy */,
+ {0x256b, 0xd7} /* drawings vertical heavy and horizontal light */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x258c, 0xdd} /* half block */,
+ {0x2590, 0xde} /* half block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm860_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm860_extra[cet_ucs4_to_ibm860_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm860 = /* defined in cet.h */
+{
+ cet_cs_name_ibm860, /* name of character set */
+ cet_cs_alias_ibm860, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm860, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm860, /* first non standard character */
+ cet_ucs4_cnt_ibm860, /* number of values in table */
+
+ cet_ucs4_to_ibm860_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm860_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm860_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e3, 0x00e0, 0x00c1, 0x00e7,
+ 0x00ea, 0x00ca, 0x00e8, 0x00ce, 0x00d4, 0x00ec, 0x00c3, 0x00c2,
+ 0x00c9, 0x00c0, 0x00c8, 0x00f4, 0x00f5, 0x00f2, 0x00da, 0x00f9,
+ 0x00cc, 0x00d5, 0x00dc, 0x00a2, 0x00a3, 0x00d9, 0x20a7, 0x00d2,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x00d3, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM861" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm861_h
+#define ibm861_h
+
+#define cet_cs_name_ibm861 "IBM861"
+
+const char *cet_cs_alias_ibm861[] =
+{
+ "IBM861/CR-LF", "861/CR-LF", "CP861/CR-LF", "cp-is",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm861 128
+#define cet_ucs4_cnt_ibm861 128
+
+const int cet_ucs4_map_ibm861[cet_ucs4_cnt_ibm861] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00d0, 0x00f0, 0x00de, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00fe, 0x00fb, 0x00dd,
+ 0x00fd, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x20a7, 0x00d2,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00c1, 0x00cd, 0x00d3, 0x00da,
+ 0x00bf, -1, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm861_ct 127
+
+const cet_ucs4_link_t cet_ucs4_to_ibm861_links[cet_ucs4_to_ibm861_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a1, 0xad} /* exclamation mark */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b5, 0xe6} /* sign */,
+ {0x00b7, 0xf9} /* dot */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00bf, 0xa8} /* question mark */,
+ {0x00c1, 0xa4} /* capital letter a with acute */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c5, 0x8f} /* capital letter a with ring above */,
+ {0x00c6, 0x92} /* capital letter ae */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00cd, 0xa5} /* capital letter i with acute */,
+ {0x00d0, 0x8b} /* capital letter eth (icelandic) */,
+ {0x00d2, 0x9f} /* capital letter o with grave */,
+ {0x00d3, 0xa6} /* capital letter o with acute */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00d8, 0x9d} /* capital letter o with stroke */,
+ {0x00da, 0xa7} /* capital letter u with acute */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00dd, 0x97} /* capital letter y with acute */,
+ {0x00de, 0x8d} /* capital letter thorn (icelandic) */,
+ {0x00df, 0xe1} /* small letter sharp s (german) */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e5, 0x86} /* small letter a with ring above */,
+ {0x00e6, 0x91} /* small letter ae */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00f0, 0x8c} /* small letter eth (icelandic) */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00f8, 0x9b} /* small letter o with stroke */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fb, 0x96} /* small letter u with circumflex */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x00fd, 0x98} /* small letter y with acute */,
+ {0x00fe, 0x95} /* small letter thorn (icelandic) */,
+ {0x0393, 0xe2} /* capital letter gamma */,
+ {0x0398, 0xe9} /* capital letter theta */,
+ {0x03a3, 0xe4} /* capital letter sigma */,
+ {0x03a6, 0xe8} /* capital letter phi */,
+ {0x03a9, 0xea} /* capital letter omega */,
+ {0x03b1, 0xe0} /* small letter alpha */,
+ {0x03b4, 0xeb} /* small letter delta */,
+ {0x03b5, 0xee} /* small letter epsilon */,
+ {0x03c0, 0xe3} /* small letter pi */,
+ {0x03c3, 0xe5} /* small letter sigma */,
+ {0x03c4, 0xe7} /* small letter tau */,
+ {0x03c6, 0xed} /* small letter phi */,
+ {0x2022, 0xfa} /* puce */,
+ {0x207f, 0xfc} /* latin small letter n */,
+ {0x20a7, 0x9e} /* sign */,
+ {0x221a, 0xfb} /* root */,
+ {0x221e, 0xec} /* infinity */,
+ {0x2229, 0xef} /* intersection */,
+ {0x2248, 0xf7} /* equal to */,
+ {0x2261, 0xf0} /* to */,
+ {0x2264, 0xf3} /* or equal to */,
+ {0x2265, 0xf2} /* or equal to */,
+ {0x2320, 0xf4} /* half integral */,
+ {0x2321, 0xf5} /* half integral */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2552, 0xd5} /* drawings down light and right heavy */,
+ {0x2553, 0xd6} /* drawings down heavy and right light */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2555, 0xb8} /* drawings down light and left heavy */,
+ {0x2556, 0xb7} /* drawings down heavy and left light */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x2558, 0xd4} /* drawings up light and right heavy */,
+ {0x2559, 0xd3} /* drawings up heavy and right light */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255b, 0xbe} /* drawings up light and left heavy */,
+ {0x255c, 0xbd} /* drawings up heavy and left light */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x255e, 0xc6} /* drawings vertical light and right heavy */,
+ {0x255f, 0xc7} /* drawings vertical heavy and right light */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2561, 0xb5} /* drawings vertical light and left heavy */,
+ {0x2562, 0xb6} /* drawings vertical heavy and left light */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2564, 0xd1} /* drawings down light and horizontal heavy */,
+ {0x2565, 0xd2} /* drawings down heavy and horizontal light */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2567, 0xcf} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xd0} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256a, 0xd8} /* drawings vertical light and horizontal heavy */,
+ {0x256b, 0xd7} /* drawings vertical heavy and horizontal light */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x258c, 0xdd} /* half block */,
+ {0x2590, 0xde} /* half block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm861_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm861_extra[cet_ucs4_to_ibm861_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm861 = /* defined in cet.h */
+{
+ cet_cs_name_ibm861, /* name of character set */
+ cet_cs_alias_ibm861, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm861, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm861, /* first non standard character */
+ cet_ucs4_cnt_ibm861, /* number of values in table */
+
+ cet_ucs4_to_ibm861_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm861_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm861_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00d0, 0x00f0, 0x00de, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00fe, 0x00fb, 0x00dd,
+ 0x00fd, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x20a7, 0x00d2,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00c1, 0x00cd, 0x00d3, 0x00da,
+ 0x00bf, -1, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM862" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm862_h
+#define ibm862_h
+
+#define cet_cs_name_ibm862 "IBM862"
+
+const char *cet_cs_alias_ibm862[] =
+{
+ "IBM862/CR-LF", "862/CR-LF", "CP862/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm862 128
+#define cet_ucs4_cnt_ibm862 128
+
+const int cet_ucs4_map_ibm862[cet_ucs4_cnt_ibm862] =
+{
+ 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+ 0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+ 0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+ 0x05e8, 0x05e9, 0x05ea, 0x00a2, 0x00a3, 0x00d9, 0x20a7, 0x00d2,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, -1, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm862_ct 127
+
+const cet_ucs4_link_t cet_ucs4_to_ibm862_links[cet_ucs4_to_ibm862_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a1, 0xad} /* exclamation mark */,
+ {0x00a2, 0x9b} /* sign */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00aa, 0xa6} /* ordinal indicator */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b5, 0xe6} /* sign */,
+ {0x00b7, 0xf9} /* dot */,
+ {0x00ba, 0xa7} /* ordinal indicator */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00bf, 0xa8} /* question mark */,
+ {0x00d1, 0xa5} /* capital letter n with tilde */,
+ {0x00d2, 0x9f} /* capital letter o with grave */,
+ {0x00d9, 0x9d} /* capital letter u with grave */,
+ {0x00df, 0xe1} /* small letter sharp s (german) */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00f1, 0xa4} /* small letter n with tilde */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x0393, 0xe2} /* capital letter gamma */,
+ {0x0398, 0xe9} /* capital letter theta */,
+ {0x03a3, 0xe4} /* capital letter sigma */,
+ {0x03a6, 0xe8} /* capital letter phi */,
+ {0x03a9, 0xea} /* capital letter omega */,
+ {0x03b1, 0xe0} /* small letter alpha */,
+ {0x03b4, 0xeb} /* small letter delta */,
+ {0x03b5, 0xee} /* small letter epsilon */,
+ {0x03c0, 0xe3} /* small letter pi */,
+ {0x03c3, 0xe5} /* small letter sigma */,
+ {0x03c4, 0xe7} /* small letter tau */,
+ {0x03c6, 0xed} /* small letter phi */,
+ {0x05d0, 0x80} /* letter alef */,
+ {0x05d1, 0x81} /* letter bet */,
+ {0x05d2, 0x82} /* letter gimel */,
+ {0x05d3, 0x83} /* letter dalet */,
+ {0x05d4, 0x84} /* letter he */,
+ {0x05d5, 0x85} /* letter vav */,
+ {0x05d6, 0x86} /* letter zayin */,
+ {0x05d7, 0x87} /* letter het */,
+ {0x05d8, 0x88} /* letter tet */,
+ {0x05d9, 0x89} /* letter yod */,
+ {0x05da, 0x8a} /* letter final kaf */,
+ {0x05db, 0x8b} /* letter kaf */,
+ {0x05dc, 0x8c} /* letter lamed */,
+ {0x05dd, 0x8d} /* letter final mem */,
+ {0x05de, 0x8e} /* letter mem */,
+ {0x05df, 0x8f} /* letter final nun */,
+ {0x05e0, 0x90} /* letter nun */,
+ {0x05e1, 0x91} /* letter samekh */,
+ {0x05e2, 0x92} /* letter ayin */,
+ {0x05e3, 0x93} /* letter final pe */,
+ {0x05e4, 0x94} /* letter pe */,
+ {0x05e5, 0x95} /* letter final tsadi */,
+ {0x05e6, 0x96} /* letter tsadi */,
+ {0x05e7, 0x97} /* letter qof */,
+ {0x05e8, 0x98} /* letter resh */,
+ {0x05e9, 0x99} /* letter shin */,
+ {0x05ea, 0x9a} /* letter tav */,
+ {0x2022, 0xfa} /* puce */,
+ {0x207f, 0xfc} /* latin small letter n */,
+ {0x20a7, 0x9e} /* sign */,
+ {0x221a, 0xfb} /* root */,
+ {0x221e, 0xec} /* infinity */,
+ {0x2229, 0xef} /* intersection */,
+ {0x2248, 0xf7} /* equal to */,
+ {0x2261, 0xf0} /* to */,
+ {0x2264, 0xf3} /* or equal to */,
+ {0x2265, 0xf2} /* or equal to */,
+ {0x2320, 0xf4} /* half integral */,
+ {0x2321, 0xf5} /* half integral */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2552, 0xd5} /* drawings down light and right heavy */,
+ {0x2553, 0xd6} /* drawings down heavy and right light */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2555, 0xb8} /* drawings down light and left heavy */,
+ {0x2556, 0xb7} /* drawings down heavy and left light */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x2558, 0xd4} /* drawings up light and right heavy */,
+ {0x2559, 0xd3} /* drawings up heavy and right light */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255b, 0xbe} /* drawings up light and left heavy */,
+ {0x255c, 0xbd} /* drawings up heavy and left light */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x255e, 0xc6} /* drawings vertical light and right heavy */,
+ {0x255f, 0xc7} /* drawings vertical heavy and right light */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2561, 0xb5} /* drawings vertical light and left heavy */,
+ {0x2562, 0xb6} /* drawings vertical heavy and left light */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2564, 0xd1} /* drawings down light and horizontal heavy */,
+ {0x2565, 0xd2} /* drawings down heavy and horizontal light */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2567, 0xcf} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xd0} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256a, 0xd8} /* drawings vertical light and horizontal heavy */,
+ {0x256b, 0xd7} /* drawings vertical heavy and horizontal light */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x258c, 0xdd} /* half block */,
+ {0x2590, 0xde} /* half block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm862_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm862_extra[cet_ucs4_to_ibm862_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm862 = /* defined in cet.h */
+{
+ cet_cs_name_ibm862, /* name of character set */
+ cet_cs_alias_ibm862, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm862, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm862, /* first non standard character */
+ cet_ucs4_cnt_ibm862, /* number of values in table */
+
+ cet_ucs4_to_ibm862_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm862_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm862_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+ 0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+ 0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+ 0x05e8, 0x05e9, 0x05ea, 0x00a2, 0x00a3, 0x00d9, 0x20a7, 0x00d2,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, -1, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x03c6, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x00b0, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM863" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm863_h
+#define ibm863_h
+
+#define cet_cs_name_ibm863 "IBM863"
+
+const char *cet_cs_alias_ibm863[] =
+{
+ "IBM863/CR-LF", "863/CR-LF", "CP863/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm863 128
+#define cet_ucs4_cnt_ibm863 128
+
+const int cet_ucs4_map_ibm863[cet_ucs4_cnt_ibm863] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00c2, 0x00e0, 0x00b6, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c0, 0x00a7,
+ 0x00c9, 0x00c8, 0x00ca, 0x00f4, 0x00cb, 0x00cf, 0x00fb, 0x00f9,
+ 0x00a4, 0x00d4, 0x00dc, 0x00a2, 0x00a3, 0x00d9, 0x00db, 0x0192,
+ 0x00a6, 0x00b4, 0x00f3, 0x00fa, 0x00a8, 0x00b8, 0x00b3, 0x00af,
+ 0x00ce, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00be, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x2205, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x2218, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm863_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_ibm863_links[cet_ucs4_to_ibm863_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a2, 0x9b} /* sign */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00a4, 0x98} /* sign */,
+ {0x00a6, 0xa0} /* bar */,
+ {0x00a7, 0x8f} /* sign */,
+ {0x00a8, 0xa4} /* diaeresis */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00af, 0xa7} /* macron */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b3, 0xa6} /* three */,
+ {0x00b4, 0xa1} /* accent */,
+ {0x00b5, 0xe6} /* sign */,
+ {0x00b6, 0x86} /* sign */,
+ {0x00b7, 0xf9} /* dot */,
+ {0x00b8, 0xa5} /* cedilla */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00be, 0xad} /* fraction three quarters */,
+ {0x00c0, 0x8e} /* capital letter a with grave */,
+ {0x00c2, 0x84} /* capital letter a with circumflex */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c8, 0x91} /* capital letter e with grave */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00ca, 0x92} /* capital letter e with circumflex */,
+ {0x00cb, 0x94} /* capital letter e with diaeresis */,
+ {0x00ce, 0xa8} /* capital letter i with circumflex */,
+ {0x00cf, 0x95} /* capital letter i with diaeresis */,
+ {0x00d4, 0x99} /* capital letter o with circumflex */,
+ {0x00d9, 0x9d} /* capital letter u with grave */,
+ {0x00db, 0x9e} /* capital letter u with circumflex */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00df, 0xe1} /* small letter sharp s (german) */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ec, 0x8d} /* small letter i with grave */,
+ {0x00ee, 0x8c} /* small letter i with circumflex */,
+ {0x00ef, 0x8b} /* small letter i with diaeresis */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00f9, 0x97} /* small letter u with grave */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fb, 0x96} /* small letter u with circumflex */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x0192, 0x9f} /* minuscule latine f hameçon */,
+ {0x0393, 0xe2} /* capital letter gamma */,
+ {0x0398, 0xe9} /* capital letter theta */,
+ {0x03a3, 0xe4} /* capital letter sigma */,
+ {0x03a6, 0xe8} /* capital letter phi */,
+ {0x03a9, 0xea} /* capital letter omega */,
+ {0x03b1, 0xe0} /* small letter alpha */,
+ {0x03b4, 0xeb} /* small letter delta */,
+ {0x03b5, 0xee} /* small letter epsilon */,
+ {0x03c0, 0xe3} /* small letter pi */,
+ {0x03c3, 0xe5} /* small letter sigma */,
+ {0x03c4, 0xe7} /* small letter tau */,
+ {0x2022, 0xfa} /* puce */,
+ {0x207f, 0xfc} /* latin small letter n */,
+ {0x2205, 0xed} /* set */,
+ {0x2218, 0xf8} /* operator */,
+ {0x221a, 0xfb} /* root */,
+ {0x221e, 0xec} /* infinity */,
+ {0x2229, 0xef} /* intersection */,
+ {0x2248, 0xf7} /* equal to */,
+ {0x2261, 0xf0} /* to */,
+ {0x2264, 0xf3} /* or equal to */,
+ {0x2265, 0xf2} /* or equal to */,
+ {0x2310, 0xa9} /* not sign */,
+ {0x2320, 0xf4} /* half integral */,
+ {0x2321, 0xf5} /* half integral */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2552, 0xd5} /* drawings down light and right heavy */,
+ {0x2553, 0xd6} /* drawings down heavy and right light */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2555, 0xb8} /* drawings down light and left heavy */,
+ {0x2556, 0xb7} /* drawings down heavy and left light */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x2558, 0xd4} /* drawings up light and right heavy */,
+ {0x2559, 0xd3} /* drawings up heavy and right light */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255b, 0xbe} /* drawings up light and left heavy */,
+ {0x255c, 0xbd} /* drawings up heavy and left light */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x255e, 0xc6} /* drawings vertical light and right heavy */,
+ {0x255f, 0xc7} /* drawings vertical heavy and right light */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2561, 0xb5} /* drawings vertical light and left heavy */,
+ {0x2562, 0xb6} /* drawings vertical heavy and left light */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2564, 0xd1} /* drawings down light and horizontal heavy */,
+ {0x2565, 0xd2} /* drawings down heavy and horizontal light */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2567, 0xcf} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xd0} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256a, 0xd8} /* drawings vertical light and horizontal heavy */,
+ {0x256b, 0xd7} /* drawings vertical heavy and horizontal light */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x258c, 0xdd} /* half block */,
+ {0x2590, 0xde} /* half block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm863_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm863_extra[cet_ucs4_to_ibm863_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm863 = /* defined in cet.h */
+{
+ cet_cs_name_ibm863, /* name of character set */
+ cet_cs_alias_ibm863, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm863, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm863, /* first non standard character */
+ cet_ucs4_cnt_ibm863, /* number of values in table */
+
+ cet_ucs4_to_ibm863_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm863_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm863_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00c2, 0x00e0, 0x00b6, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c0, 0x00a7,
+ 0x00c9, 0x00c8, 0x00ca, 0x00f4, 0x00cb, 0x00cf, 0x00fb, 0x00f9,
+ 0x00a4, 0x00d4, 0x00dc, 0x00a2, 0x00a3, 0x00d9, 0x00db, 0x0192,
+ 0x00a6, 0x00b4, 0x00f3, 0x00fa, 0x00a8, 0x00b8, 0x00b3, 0x00af,
+ 0x00ce, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00be, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x2205, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x2218, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM864" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm864_h
+#define ibm864_h
+
+#define cet_cs_name_ibm864 "IBM864"
+
+const char *cet_cs_alias_ibm864[] =
+{
+ "IBM864/CR-LF", "864/CR-LF", "CP864/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm864 128
+#define cet_ucs4_cnt_ibm864 128
+
+const int cet_ucs4_map_ibm864[cet_ucs4_cnt_ibm864] =
+{
+ 0x00b0, 0x00b7, 0x2218, 0x221a, 0x2592, 0x2500, 0x2502, 0x253c,
+ 0x2524, 0x252c, 0x251c, 0x2534, 0x2510, 0x250c, 0x2514, 0x2518,
+ 0x00df, 0x221e, 0x00f8, 0x00b1, 0x00bd, 0x00bc, 0x2248, 0x00ab,
+ 0x00bb, 0xfef7, 0xfef8, -1, -1, 0xfefb, 0xfefc, 0xe016,
+ -1, 0x00ad, 0xfe82, 0x00a3, 0x00a4, 0xfe84, -1, -1,
+ 0xfe8e, 0x0628, 0x062a, 0x062b, 0x060c, 0x062c, 0x062d, 0x062e,
+ 0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
+ 0x0668, 0x0669, 0x06a4, 0x061b, 0x0633, 0x0634, 0x0635, 0x061f,
+ 0x00a2, 0x0621, 0x0622, 0x0623, 0x0624, 0xfeca, 0x0626, 0x0627,
+ 0xfe91, 0x0629, 0xfe97, 0xfe9b, 0xfe9f, 0xfea3, 0xfea7, 0x062f,
+ 0x0630, 0x0631, 0x0632, 0xfeb3, 0xfeb7, 0xfebb, 0xfebf, 0x0637,
+ 0x0638, 0xfecb, 0xfecf, 0x00a6, 0x00ac, 0x00f7, 0x00d7, 0x0639,
+ 0x0640, 0xfed2, 0xfed6, 0xfedb, 0xfede, 0xfee3, 0xfee6, 0xfeeb,
+ 0x0648, 0x0649, 0xfef3, 0x0636, 0xfee2, 0xfece, 0x063a, 0x0645,
+ 0xfe7d, 0x0651, 0x0646, 0x0647, 0xfeec, 0xfef0, 0xfef2, 0x0641,
+ 0x0642, 0xfef5, 0xfef6, 0x0644, 0x0643, 0x064a, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm864_ct 121
+
+const cet_ucs4_link_t cet_ucs4_to_ibm864_links[cet_ucs4_to_ibm864_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a2, 0xc0} /* sign */,
+ {0x00a6, 0xdb} /* bar */,
+ {0x00ab, 0x97} /* double angle quotation mark */,
+ {0x00ac, 0xdc} /* sign */,
+ {0x00ad, 0xa1} /* hyphen */,
+ {0x00b0, 0x80} /* sign */,
+ {0x00b1, 0x93} /* sign */,
+ {0x00b7, 0x81} /* dot */,
+ {0x00bb, 0x98} /* double angle quotation mark */,
+ {0x00bc, 0x95} /* fraction one quarter */,
+ {0x00bd, 0x94} /* fraction one half */,
+ {0x00d7, 0xde} /* sign */,
+ {0x00df, 0x90} /* small letter sharp s (german) */,
+ {0x00f7, 0xdd} /* sign */,
+ {0x00f8, 0x92} /* small letter o with stroke */,
+ {0x060c, 0xac} /* comma */,
+ {0x061b, 0xbb} /* semicolon */,
+ {0x061f, 0xbf} /* question mark */,
+ {0x0621, 0xc1} /* letter hamza */,
+ {0x0622, 0xc2} /* letter alef with madda above */,
+ {0x0623, 0xc3} /* letter alef with hamza above */,
+ {0x0624, 0xc4} /* letter waw with hamza above */,
+ {0x0626, 0xc6} /* letter yeh with hamza above */,
+ {0x0627, 0xc7} /* letter alef */,
+ {0x0628, 0xa9} /* letter beh */,
+ {0x0629, 0xc9} /* letter teh marbuta */,
+ {0x062a, 0xaa} /* letter teh */,
+ {0x062b, 0xab} /* letter theh */,
+ {0x062c, 0xad} /* letter jeem */,
+ {0x062d, 0xae} /* letter hah */,
+ {0x062e, 0xaf} /* letter khah */,
+ {0x062f, 0xcf} /* letter dal */,
+ {0x0630, 0xd0} /* letter thal */,
+ {0x0631, 0xd1} /* letter reh */,
+ {0x0632, 0xd2} /* letter zain */,
+ {0x0633, 0xbc} /* letter seen */,
+ {0x0634, 0xbd} /* letter sheen */,
+ {0x0635, 0xbe} /* letter sad */,
+ {0x0636, 0xeb} /* letter dad */,
+ {0x0637, 0xd7} /* letter tah */,
+ {0x0638, 0xd8} /* letter zah */,
+ {0x0639, 0xdf} /* letter ain */,
+ {0x063a, 0xee} /* letter ghain */,
+ {0x0640, 0xe0} /* tatweel */,
+ {0x0641, 0xf7} /* letter feh */,
+ {0x0642, 0xf8} /* letter qaf */,
+ {0x0643, 0xfc} /* letter kaf */,
+ {0x0644, 0xfb} /* letter lam */,
+ {0x0645, 0xef} /* letter meem */,
+ {0x0646, 0xf2} /* letter noon */,
+ {0x0647, 0xf3} /* letter heh */,
+ {0x0648, 0xe8} /* letter waw */,
+ {0x0649, 0xe9} /* letter alef maksura */,
+ {0x064a, 0xfd} /* letter yeh */,
+ {0x0651, 0xf1} /* shadda */,
+ {0x0660, 0xb0} /* arabic-indic digit zero */,
+ {0x0661, 0xb1} /* arabic-indic digit one */,
+ {0x0662, 0xb2} /* arabic-indic digit two */,
+ {0x0663, 0xb3} /* arabic-indic digit three */,
+ {0x0664, 0xb4} /* arabic-indic digit four */,
+ {0x0665, 0xb5} /* arabic-indic digit five */,
+ {0x0666, 0xb6} /* arabic-indic digit six */,
+ {0x0667, 0xb7} /* arabic-indic digit seven */,
+ {0x0668, 0xb8} /* arabic-indic digit eight */,
+ {0x0669, 0xb9} /* arabic-indic digit nine */,
+ {0x06a4, 0xba} /* letter veh */,
+ {0x2218, 0x82} /* operator */,
+ {0x221a, 0x83} /* root */,
+ {0x221e, 0x91} /* infinity */,
+ {0x2248, 0x96} /* equal to */,
+ {0x2500, 0x85} /* drawings light horizontal */,
+ {0x2502, 0x86} /* drawings light vertical */,
+ {0x250c, 0x8d} /* drawings light down and right */,
+ {0x2510, 0x8c} /* drawings light down and left */,
+ {0x2514, 0x8e} /* drawings light up and right */,
+ {0x2518, 0x8f} /* drawings light up and left */,
+ {0x251c, 0x8a} /* drawings light vertical and right */,
+ {0x2524, 0x88} /* drawings light vertical and left */,
+ {0x252c, 0x89} /* drawings light down and horizontal */,
+ {0x2534, 0x8b} /* drawings light up and horizontal */,
+ {0x253c, 0x87} /* drawings light vertical and horizontal */,
+ {0x2592, 0x84} /* shade */,
+ {0x25a0, 0xfe} /* square */,
+ {0xe016, 0x9f} /* letter alef final form compatibility (ibm868 144) */,
+ {0xfe7d, 0xf0} /* shadda medial form */,
+ {0xfe82, 0xa2} /* letter alef with madda above final form */,
+ {0xfe84, 0xa5} /* letter alef with hamza above final form */,
+ {0xfe8e, 0xa8} /* letter alef final form */,
+ {0xfe91, 0xc8} /* letter beh initial form */,
+ {0xfe97, 0xca} /* letter teh initial form */,
+ {0xfe9b, 0xcb} /* letter theh initial form */,
+ {0xfe9f, 0xcc} /* letter jeem initial form */,
+ {0xfea3, 0xcd} /* letter hah initial form */,
+ {0xfea7, 0xce} /* letter khah initial form */,
+ {0xfeb3, 0xd3} /* letter seen initial form */,
+ {0xfeb7, 0xd4} /* letter sheen initial form */,
+ {0xfebb, 0xd5} /* letter sad initial form */,
+ {0xfebf, 0xd6} /* letter dad initial form */,
+ {0xfeca, 0xc5} /* letter ain final form */,
+ {0xfecb, 0xd9} /* letter ain initial form */,
+ {0xfece, 0xed} /* letter ghain final form */,
+ {0xfecf, 0xda} /* letter ghain initial form */,
+ {0xfed2, 0xe1} /* letter feh final form */,
+ {0xfed6, 0xe2} /* letter qaf final form */,
+ {0xfedb, 0xe3} /* letter kaf initial form */,
+ {0xfede, 0xe4} /* letter lam final form */,
+ {0xfee2, 0xec} /* letter meem final form */,
+ {0xfee3, 0xe5} /* letter meem initial form */,
+ {0xfee6, 0xe6} /* letter noon final form */,
+ {0xfeeb, 0xe7} /* letter heh initial form */,
+ {0xfeec, 0xf4} /* letter heh medial form */,
+ {0xfef0, 0xf5} /* letter alef maksura final form */,
+ {0xfef2, 0xf6} /* letter yeh final form */,
+ {0xfef3, 0xea} /* letter yeh initial form */,
+ {0xfef5, 0xf9} /* ligature lam with alef with madda above */,
+ {0xfef6, 0xfa} /* ligature lam with alef with madda above */,
+ {0xfef7, 0x99} /* ligature lam with alef with hamza above */,
+ {0xfef8, 0x9a} /* ligature lam with alef with hamza above */,
+ {0xfefb, 0x9d} /* ligature lam with alef isolated form */,
+ {0xfefc, 0x9e} /* ligature lam with alef final form */
+};
+
+/*
+#define cet_ucs4_to_ibm864_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm864_extra[cet_ucs4_to_ibm864_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm864 = /* defined in cet.h */
+{
+ cet_cs_name_ibm864, /* name of character set */
+ cet_cs_alias_ibm864, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm864, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm864, /* first non standard character */
+ cet_ucs4_cnt_ibm864, /* number of values in table */
+
+ cet_ucs4_to_ibm864_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm864_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm864_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00b0, 0x00b7, 0x2218, 0x221a, 0x2592, 0x2500, 0x2502, 0x253c,
+ 0x2524, 0x252c, 0x251c, 0x2534, 0x2510, 0x250c, 0x2514, 0x2518,
+ 0x00df, 0x221e, 0x00f8, 0x00b1, 0x00bd, 0x00bc, 0x2248, 0x00ab,
+ 0x00bb, 0xfef7, 0xfef8, -1, -1, 0xfefb, 0xfefc, 0xe016,
+ -1, 0x00ad, 0xfe82, 0x00a3, 0x00a4, 0xfe84, -1, -1,
+ 0xfe8e, 0x0628, 0x062a, 0x062b, 0x060c, 0x062c, 0x062d, 0x062e,
+ 0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
+ 0x0668, 0x0669, 0x06a4, 0x061b, 0x0633, 0x0634, 0x0635, 0x061f,
+ 0x00a2, 0x0621, 0x0622, 0x0623, 0x0624, 0xfeca, 0x0626, 0x0627,
+ 0xfe91, 0x0629, 0xfe97, 0xfe9b, 0xfe9f, 0xfea3, 0xfea7, 0x062f,
+ 0x0630, 0x0631, 0x0632, 0xfeb3, 0xfeb7, 0xfebb, 0xfebf, 0x0637,
+ 0x0638, 0xfecb, 0xfecf, 0x00a6, 0x00ac, 0x00f7, 0x00d7, 0x0639,
+ 0x0640, 0xfed2, 0xfed6, 0xfedb, 0xfede, 0xfee3, 0xfee6, 0xfeeb,
+ 0x0648, 0x0649, 0xfef3, 0x0636, 0xfee2, 0xfece, 0x063a, 0x0645,
+ 0xfe7d, 0x0651, 0x0646, 0x0647, 0xfeec, 0xfef0, 0xfef2, 0x0641,
+ 0x0642, 0xfef5, 0xfef6, 0x0644, 0x0643, 0x064a, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM865" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm865_h
+#define ibm865_h
+
+#define cet_cs_name_ibm865 "IBM865"
+
+const char *cet_cs_alias_ibm865[] =
+{
+ "IBM865/CR-LF", "865/CR-LF", "CP865/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm865 128
+#define cet_ucs4_cnt_ibm865 128
+
+const int cet_ucs4_map_ibm865[cet_ucs4_cnt_ibm865] =
+{
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x00ff, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x20a7, 0x0192,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x2205, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x2218, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm865_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_ibm865_links[cet_ucs4_to_ibm865_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a1, 0xad} /* exclamation mark */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00aa, 0xa6} /* ordinal indicator */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0xaa} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b5, 0xe6} /* sign */,
+ {0x00b7, 0xf9} /* dot */,
+ {0x00ba, 0xa7} /* ordinal indicator */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x00bf, 0xa8} /* question mark */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c5, 0x8f} /* capital letter a with ring above */,
+ {0x00c6, 0x92} /* capital letter ae */,
+ {0x00c7, 0x80} /* capital letter c with cedilla */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00d1, 0xa5} /* capital letter n with tilde */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00d8, 0x9d} /* capital letter o with stroke */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00df, 0xe1} /* small letter sharp s (german) */,
+ {0x00e0, 0x85} /* small letter a with grave */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e2, 0x83} /* small letter a with circumflex */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e5, 0x86} /* small letter a with ring above */,
+ {0x00e6, 0x91} /* small letter ae */,
+ {0x00e7, 0x87} /* small letter c with cedilla */,
+ {0x00e8, 0x8a} /* small letter e with grave */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ea, 0x88} /* small letter e with circumflex */,
+ {0x00eb, 0x89} /* small letter e with diaeresis */,
+ {0x00ec, 0x8d} /* small letter i with grave */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00ee, 0x8c} /* small letter i with circumflex */,
+ {0x00ef, 0x8b} /* small letter i with diaeresis */,
+ {0x00f1, 0xa4} /* small letter n with tilde */,
+ {0x00f2, 0x95} /* small letter o with grave */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00f8, 0x9b} /* small letter o with stroke */,
+ {0x00f9, 0x97} /* small letter u with grave */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fb, 0x96} /* small letter u with circumflex */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x00ff, 0x98} /* small letter y with diaeresis */,
+ {0x0192, 0x9f} /* minuscule latine f hameçon */,
+ {0x0393, 0xe2} /* capital letter gamma */,
+ {0x0398, 0xe9} /* capital letter theta */,
+ {0x03a3, 0xe4} /* capital letter sigma */,
+ {0x03a6, 0xe8} /* capital letter phi */,
+ {0x03a9, 0xea} /* capital letter omega */,
+ {0x03b1, 0xe0} /* small letter alpha */,
+ {0x03b4, 0xeb} /* small letter delta */,
+ {0x03b5, 0xee} /* small letter epsilon */,
+ {0x03c0, 0xe3} /* small letter pi */,
+ {0x03c3, 0xe5} /* small letter sigma */,
+ {0x03c4, 0xe7} /* small letter tau */,
+ {0x2022, 0xfa} /* puce */,
+ {0x207f, 0xfc} /* latin small letter n */,
+ {0x20a7, 0x9e} /* sign */,
+ {0x2205, 0xed} /* set */,
+ {0x2218, 0xf8} /* operator */,
+ {0x221a, 0xfb} /* root */,
+ {0x221e, 0xec} /* infinity */,
+ {0x2229, 0xef} /* intersection */,
+ {0x2248, 0xf7} /* equal to */,
+ {0x2261, 0xf0} /* to */,
+ {0x2264, 0xf3} /* or equal to */,
+ {0x2265, 0xf2} /* or equal to */,
+ {0x2310, 0xa9} /* not sign */,
+ {0x2320, 0xf4} /* half integral */,
+ {0x2321, 0xf5} /* half integral */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2552, 0xd5} /* drawings down light and right heavy */,
+ {0x2553, 0xd6} /* drawings down heavy and right light */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2555, 0xb8} /* drawings down light and left heavy */,
+ {0x2556, 0xb7} /* drawings down heavy and left light */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x2558, 0xd4} /* drawings up light and right heavy */,
+ {0x2559, 0xd3} /* drawings up heavy and right light */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255b, 0xbe} /* drawings up light and left heavy */,
+ {0x255c, 0xbd} /* drawings up heavy and left light */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x255e, 0xc6} /* drawings vertical light and right heavy */,
+ {0x255f, 0xc7} /* drawings vertical heavy and right light */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2561, 0xb5} /* drawings vertical light and left heavy */,
+ {0x2562, 0xb6} /* drawings vertical heavy and left light */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2564, 0xd1} /* drawings down light and horizontal heavy */,
+ {0x2565, 0xd2} /* drawings down heavy and horizontal light */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2567, 0xcf} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xd0} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256a, 0xd8} /* drawings vertical light and horizontal heavy */,
+ {0x256b, 0xd7} /* drawings vertical heavy and horizontal light */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x258c, 0xdd} /* half block */,
+ {0x2590, 0xde} /* half block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm865_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm865_extra[cet_ucs4_to_ibm865_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm865 = /* defined in cet.h */
+{
+ cet_cs_name_ibm865, /* name of character set */
+ cet_cs_alias_ibm865, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm865, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm865, /* first non standard character */
+ cet_ucs4_cnt_ibm865, /* number of values in table */
+
+ cet_ucs4_to_ibm865_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm865_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm865_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c7, 0x00fc, 0x00e9, 0x00e2, 0x00e4, 0x00e0, 0x00e5, 0x00e7,
+ 0x00ea, 0x00eb, 0x00e8, 0x00ef, 0x00ee, 0x00ec, 0x00c4, 0x00c5,
+ 0x00c9, 0x00e6, 0x00c6, 0x00f4, 0x00f6, 0x00f2, 0x00fb, 0x00f9,
+ 0x00ff, 0x00d6, 0x00dc, 0x00f8, 0x00a3, 0x00d8, 0x20a7, 0x0192,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x00f1, 0x00d1, 0x00aa, 0x00ba,
+ 0x00bf, 0x2310, 0x00ac, 0x00bd, 0x00bc, 0x00a1, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x00df, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x00b5, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x2205, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x2218, 0x00b7, 0x2022, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM868" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm868_h
+#define ibm868_h
+
+#define cet_cs_name_ibm868 "IBM868"
+
+const char *cet_cs_alias_ibm868[] =
+{
+ "IBM868/CR-LF", "868/CR-LF", "CP868/CR-LF", "cp-ar",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm868 128
+#define cet_ucs4_cnt_ibm868 128
+
+const int cet_ucs4_map_ibm868[cet_ucs4_cnt_ibm868] =
+{
+ 0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
+ 0x0668, 0x0669, 0x060c, 0x061b, 0x061f, 0x0622, 0x0627, 0xfe8e,
+ 0xe016, 0x0628, 0xfe91, 0x067e, -1, 0x0629, 0x062a, 0xfe97,
+ -1, -1, 0x062b, 0xfe9b, 0x062c, 0xfe9f, -1, -1,
+ 0x062d, 0xfea3, 0x062e, 0xfea7, 0x062f, -1, 0x0630, 0x0631,
+ -1, 0x0632, -1, 0x0633, 0xfeb3, 0x0634, 0x00ab, 0x00bb,
+ 0xfeb7, 0x0635, 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0xfebb,
+ 0x0636, 0xfebf, 0x0637, 0x2563, 0x2551, 0x2557, 0x255d, 0x0638,
+ 0x0639, 0x2510, 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c,
+ 0xfeca, 0xfecb, 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550,
+ 0x256c, 0xfecc, 0x063a, 0xfece, 0xfecf, 0xfed0, 0x0641, 0xfed3,
+ 0x0642, 0xfed7, 0xfeda, 0x2518, 0x250c, 0x2588, 0x2580, 0xfedb,
+ -1, 0x2584, -1, 0x0644, 0xfede, 0xfee0, 0x0645, 0xfee3,
+ -1, 0x0646, 0xfee7, -1, 0x0648, -1, -1, -1,
+ -1, 0x0621, 0x00ad, -1, -1, -1, -1, -1,
+ -1, -1, -1, 0x0651, 0xfe7d, -1, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm868_ct 103
+
+const cet_ucs4_link_t cet_ucs4_to_ibm868_links[cet_ucs4_to_ibm868_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ad, 0xf2} /* hyphen */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x060c, 0x8a} /* comma */,
+ {0x061b, 0x8b} /* semicolon */,
+ {0x061f, 0x8c} /* question mark */,
+ {0x0621, 0xf1} /* letter hamza */,
+ {0x0622, 0x8d} /* letter alef with madda above */,
+ {0x0627, 0x8e} /* letter alef */,
+ {0x0628, 0x91} /* letter beh */,
+ {0x0629, 0x95} /* letter teh marbuta */,
+ {0x062a, 0x96} /* letter teh */,
+ {0x062b, 0x9a} /* letter theh */,
+ {0x062c, 0x9c} /* letter jeem */,
+ {0x062d, 0xa0} /* letter hah */,
+ {0x062e, 0xa2} /* letter khah */,
+ {0x062f, 0xa4} /* letter dal */,
+ {0x0630, 0xa6} /* letter thal */,
+ {0x0631, 0xa7} /* letter reh */,
+ {0x0632, 0xa9} /* letter zain */,
+ {0x0633, 0xab} /* letter seen */,
+ {0x0634, 0xad} /* letter sheen */,
+ {0x0635, 0xb1} /* letter sad */,
+ {0x0636, 0xb8} /* letter dad */,
+ {0x0637, 0xba} /* letter tah */,
+ {0x0638, 0xbf} /* letter zah */,
+ {0x0639, 0xc0} /* letter ain */,
+ {0x063a, 0xd2} /* letter ghain */,
+ {0x0641, 0xd6} /* letter feh */,
+ {0x0642, 0xd8} /* letter qaf */,
+ {0x0644, 0xe3} /* letter lam */,
+ {0x0645, 0xe6} /* letter meem */,
+ {0x0646, 0xe9} /* letter noon */,
+ {0x0648, 0xec} /* letter waw */,
+ {0x0651, 0xfb} /* shadda */,
+ {0x0660, 0x80} /* arabic-indic digit zero */,
+ {0x0661, 0x81} /* arabic-indic digit one */,
+ {0x0662, 0x82} /* arabic-indic digit two */,
+ {0x0663, 0x83} /* arabic-indic digit three */,
+ {0x0664, 0x84} /* arabic-indic digit four */,
+ {0x0665, 0x85} /* arabic-indic digit five */,
+ {0x0666, 0x86} /* arabic-indic digit six */,
+ {0x0667, 0x87} /* arabic-indic digit seven */,
+ {0x0668, 0x88} /* arabic-indic digit eight */,
+ {0x0669, 0x89} /* arabic-indic digit nine */,
+ {0x067e, 0x93} /* letter peh */,
+ {0x2500, 0xc6} /* drawings light horizontal */,
+ {0x2502, 0xb5} /* drawings light vertical */,
+ {0x250c, 0xdc} /* drawings light down and right */,
+ {0x2510, 0xc1} /* drawings light down and left */,
+ {0x2514, 0xc2} /* drawings light up and right */,
+ {0x2518, 0xdb} /* drawings light up and left */,
+ {0x251c, 0xc5} /* drawings light vertical and right */,
+ {0x2524, 0xb6} /* drawings light vertical and left */,
+ {0x252c, 0xc4} /* drawings light down and horizontal */,
+ {0x2534, 0xc3} /* drawings light up and horizontal */,
+ {0x253c, 0xc7} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcf} /* drawings heavy horizontal */,
+ {0x2551, 0xbc} /* drawings heavy vertical */,
+ {0x2554, 0xcb} /* drawings heavy down and right */,
+ {0x2557, 0xbd} /* drawings heavy down and left */,
+ {0x255a, 0xca} /* drawings heavy up and right */,
+ {0x255d, 0xbe} /* drawings heavy up and left */,
+ {0x2560, 0xce} /* drawings heavy vertical and right */,
+ {0x2563, 0xbb} /* drawings heavy vertical and left */,
+ {0x2566, 0xcd} /* drawings heavy down and horizontal */,
+ {0x2569, 0xcc} /* drawings heavy up and horizontal */,
+ {0x256c, 0xd0} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xde} /* half block */,
+ {0x2584, 0xe1} /* half block */,
+ {0x2588, 0xdd} /* block */,
+ {0x2591, 0xb2} /* shade */,
+ {0x2592, 0xb3} /* shade */,
+ {0x2593, 0xb4} /* shade */,
+ {0x25a0, 0xfe} /* square */,
+ {0xe016, 0x90} /* letter alef final form compatibility (ibm868 144) */,
+ {0xfe7d, 0xfc} /* shadda medial form */,
+ {0xfe8e, 0x8f} /* letter alef final form */,
+ {0xfe91, 0x92} /* letter beh initial form */,
+ {0xfe97, 0x97} /* letter teh initial form */,
+ {0xfe9b, 0x9b} /* letter theh initial form */,
+ {0xfe9f, 0x9d} /* letter jeem initial form */,
+ {0xfea3, 0xa1} /* letter hah initial form */,
+ {0xfea7, 0xa3} /* letter khah initial form */,
+ {0xfeb3, 0xac} /* letter seen initial form */,
+ {0xfeb7, 0xb0} /* letter sheen initial form */,
+ {0xfebb, 0xb7} /* letter sad initial form */,
+ {0xfebf, 0xb9} /* letter dad initial form */,
+ {0xfeca, 0xc8} /* letter ain final form */,
+ {0xfecb, 0xc9} /* letter ain initial form */,
+ {0xfecc, 0xd1} /* letter ain medial form */,
+ {0xfece, 0xd3} /* letter ghain final form */,
+ {0xfecf, 0xd4} /* letter ghain initial form */,
+ {0xfed0, 0xd5} /* letter ghain medial form */,
+ {0xfed3, 0xd7} /* letter feh initial form */,
+ {0xfed7, 0xd9} /* letter qaf initial form */,
+ {0xfeda, 0xda} /* letter kaf final form */,
+ {0xfedb, 0xdf} /* letter kaf initial form */,
+ {0xfede, 0xe4} /* letter lam final form */,
+ {0xfee0, 0xe5} /* letter lam medial form */,
+ {0xfee3, 0xe7} /* letter meem initial form */,
+ {0xfee7, 0xea} /* letter noon initial form */
+};
+
+/*
+#define cet_ucs4_to_ibm868_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm868_extra[cet_ucs4_to_ibm868_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm868 = /* defined in cet.h */
+{
+ cet_cs_name_ibm868, /* name of character set */
+ cet_cs_alias_ibm868, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm868, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm868, /* first non standard character */
+ cet_ucs4_cnt_ibm868, /* number of values in table */
+
+ cet_ucs4_to_ibm868_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm868_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm868_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0660, 0x0661, 0x0662, 0x0663, 0x0664, 0x0665, 0x0666, 0x0667,
+ 0x0668, 0x0669, 0x060c, 0x061b, 0x061f, 0x0622, 0x0627, 0xfe8e,
+ 0xe016, 0x0628, 0xfe91, 0x067e, -1, 0x0629, 0x062a, 0xfe97,
+ -1, -1, 0x062b, 0xfe9b, 0x062c, 0xfe9f, -1, -1,
+ 0x062d, 0xfea3, 0x062e, 0xfea7, 0x062f, -1, 0x0630, 0x0631,
+ -1, 0x0632, -1, 0x0633, 0xfeb3, 0x0634, 0x00ab, 0x00bb,
+ 0xfeb7, 0x0635, 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0xfebb,
+ 0x0636, 0xfebf, 0x0637, 0x2563, 0x2551, 0x2557, 0x255d, 0x0638,
+ 0x0639, 0x2510, 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c,
+ 0xfeca, 0xfecb, 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550,
+ 0x256c, 0xfecc, 0x063a, 0xfece, 0xfecf, 0xfed0, 0x0641, 0xfed3,
+ 0x0642, 0xfed7, 0xfeda, 0x2518, 0x250c, 0x2588, 0x2580, 0xfedb,
+ -1, 0x2584, -1, 0x0644, 0xfede, 0xfee0, 0x0645, 0xfee3,
+ -1, 0x0646, 0xfee7, -1, 0x0648, -1, -1, -1,
+ -1, 0x0621, 0x00ad, -1, -1, -1, -1, -1,
+ -1, -1, -1, 0x0651, 0xfe7d, -1, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM869" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm869_h
+#define ibm869_h
+
+#define cet_cs_name_ibm869 "IBM869"
+
+const char *cet_cs_alias_ibm869[] =
+{
+ "IBM869/CR-LF", "869/CR-LF", "CP869/CR-LF", "cp-gr",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm869 128
+#define cet_ucs4_cnt_ibm869 128
+
+const int cet_ucs4_map_ibm869[cet_ucs4_cnt_ibm869] =
+{
+ -1, -1, -1, -1, -1, -1, 0x0386, -1,
+ 0x00b7, 0x00ac, 0x00a6, 0x201b, 0x2019, 0x0388, 0x2014, 0x0389,
+ 0x038a, 0x03aa, 0x038c, -1, -1, 0x038e, 0x03ab, 0x00a9,
+ 0x038f, 0x00b2, 0x00b3, 0x03ac, 0x00a3, 0x03ad, 0x03ae, 0x03af,
+ 0x03ca, 0x0390, 0x03cc, 0x03cd, 0x0391, 0x0392, 0x0393, 0x0394,
+ 0x0395, 0x0396, 0x0397, 0x00bd, 0x0398, 0x0399, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x039a, 0x039b, 0x039c,
+ 0x039d, 0x2563, 0x2551, 0x2557, 0x255d, 0x039e, 0x039f, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x03a0, 0x03a1,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x03a3,
+ 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03b1, 0x03b2,
+ 0x03b3, 0x2518, 0x250c, 0x2588, 0x2584, 0x03b4, 0x03b5, 0x2580,
+ 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd,
+ 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3, 0x03c2, 0x03c4, 0x00b4,
+ 0x00ad, 0x00b1, 0x03c5, 0x03c6, 0x03c7, 0x00a7, 0x03c8, 0x0385,
+ 0x00b0, 0x00a8, 0x03c9, 0x03cb, 0x03b0, 0x03ce, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_ibm869_ct 119
+
+const cet_ucs4_link_t cet_ucs4_to_ibm869_links[cet_ucs4_to_ibm869_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a3, 0x9c} /* sign */,
+ {0x00a6, 0x8a} /* bar */,
+ {0x00a7, 0xf5} /* sign */,
+ {0x00a8, 0xf9} /* diaeresis */,
+ {0x00a9, 0x97} /* sign */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00ac, 0x89} /* sign */,
+ {0x00ad, 0xf0} /* hyphen */,
+ {0x00b0, 0xf8} /* sign */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0x99} /* two */,
+ {0x00b3, 0x9a} /* three */,
+ {0x00b4, 0xef} /* accent */,
+ {0x00b7, 0x88} /* dot */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bd, 0xab} /* fraction one half */,
+ {0x0385, 0xf7} /* accent and diaeresis (tonos and dialytika) */,
+ {0x0386, 0x86} /* capital letter alpha with acute */,
+ {0x0388, 0x8d} /* capital letter epsilon with acute */,
+ {0x0389, 0x8f} /* capital letter eta with acute */,
+ {0x038a, 0x90} /* capital letter iota with acute */,
+ {0x038c, 0x92} /* capital letter omicron with acute */,
+ {0x038e, 0x95} /* capital letter upsilon with acute */,
+ {0x038f, 0x98} /* capital letter omega with acute */,
+ {0x0390, 0xa1} /* small letter iota with acute and diaeresis */,
+ {0x0391, 0xa4} /* capital letter alpha */,
+ {0x0392, 0xa5} /* capital letter beta */,
+ {0x0393, 0xa6} /* capital letter gamma */,
+ {0x0394, 0xa7} /* capital letter delta */,
+ {0x0395, 0xa8} /* capital letter epsilon */,
+ {0x0396, 0xa9} /* capital letter zeta */,
+ {0x0397, 0xaa} /* capital letter eta */,
+ {0x0398, 0xac} /* capital letter theta */,
+ {0x0399, 0xad} /* capital letter iota */,
+ {0x039a, 0xb5} /* capital letter kappa */,
+ {0x039b, 0xb6} /* capital letter lamda */,
+ {0x039c, 0xb7} /* capital letter mu */,
+ {0x039d, 0xb8} /* capital letter nu */,
+ {0x039e, 0xbd} /* capital letter xi */,
+ {0x039f, 0xbe} /* capital letter omicron */,
+ {0x03a0, 0xc6} /* capital letter pi */,
+ {0x03a1, 0xc7} /* capital letter rho */,
+ {0x03a3, 0xcf} /* capital letter sigma */,
+ {0x03a4, 0xd0} /* capital letter tau */,
+ {0x03a5, 0xd1} /* capital letter upsilon */,
+ {0x03a6, 0xd2} /* capital letter phi */,
+ {0x03a7, 0xd3} /* capital letter chi */,
+ {0x03a8, 0xd4} /* capital letter psi */,
+ {0x03a9, 0xd5} /* capital letter omega */,
+ {0x03aa, 0x91} /* capital letter iota with diaeresis */,
+ {0x03ab, 0x96} /* capital letter upsilon with diaeresis */,
+ {0x03ac, 0x9b} /* small letter alpha with acute */,
+ {0x03ad, 0x9d} /* small letter epsilon with acute */,
+ {0x03ae, 0x9e} /* small letter eta with acute */,
+ {0x03af, 0x9f} /* small letter iota with acute */,
+ {0x03b0, 0xfc} /* small letter upsilon with acute and diaeresis */,
+ {0x03b1, 0xd6} /* small letter alpha */,
+ {0x03b2, 0xd7} /* small letter beta */,
+ {0x03b3, 0xd8} /* small letter gamma */,
+ {0x03b4, 0xdd} /* small letter delta */,
+ {0x03b5, 0xde} /* small letter epsilon */,
+ {0x03b6, 0xe0} /* small letter zeta */,
+ {0x03b7, 0xe1} /* small letter eta */,
+ {0x03b8, 0xe2} /* small letter theta */,
+ {0x03b9, 0xe3} /* small letter iota */,
+ {0x03ba, 0xe4} /* small letter kappa */,
+ {0x03bb, 0xe5} /* small letter lamda */,
+ {0x03bc, 0xe6} /* small letter mu */,
+ {0x03bd, 0xe7} /* small letter nu */,
+ {0x03be, 0xe8} /* small letter xi */,
+ {0x03bf, 0xe9} /* small letter omicron */,
+ {0x03c0, 0xea} /* small letter pi */,
+ {0x03c1, 0xeb} /* small letter rho */,
+ {0x03c2, 0xed} /* small letter final sigma */,
+ {0x03c3, 0xec} /* small letter sigma */,
+ {0x03c4, 0xee} /* small letter tau */,
+ {0x03c5, 0xf2} /* small letter upsilon */,
+ {0x03c6, 0xf3} /* small letter phi */,
+ {0x03c7, 0xf4} /* small letter chi */,
+ {0x03c8, 0xf6} /* small letter psi */,
+ {0x03c9, 0xfa} /* small letter omega */,
+ {0x03ca, 0xa0} /* small letter iota with diaeresis */,
+ {0x03cb, 0xfb} /* small letter upsilon with diaeresis */,
+ {0x03cc, 0xa2} /* small letter omicron with acute */,
+ {0x03cd, 0xa3} /* small letter upsilon with acute */,
+ {0x03ce, 0xfd} /* small letter omega with acute */,
+ {0x2014, 0x8e} /* dash */,
+ {0x2019, 0x8c} /* single quotation mark */,
+ {0x201b, 0x8b} /* high-reversed-9 quotation mark */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_ibm869_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm869_extra[cet_ucs4_to_ibm869_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm869 = /* defined in cet.h */
+{
+ cet_cs_name_ibm869, /* name of character set */
+ cet_cs_alias_ibm869, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm869, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm869, /* first non standard character */
+ cet_ucs4_cnt_ibm869, /* number of values in table */
+
+ cet_ucs4_to_ibm869_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm869_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm869_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ -1, -1, -1, -1, -1, -1, 0x0386, -1,
+ 0x00b7, 0x00ac, 0x00a6, 0x201b, 0x2019, 0x0388, 0x2014, 0x0389,
+ 0x038a, 0x03aa, 0x038c, -1, -1, 0x038e, 0x03ab, 0x00a9,
+ 0x038f, 0x00b2, 0x00b3, 0x03ac, 0x00a3, 0x03ad, 0x03ae, 0x03af,
+ 0x03ca, 0x0390, 0x03cc, 0x03cd, 0x0391, 0x0392, 0x0393, 0x0394,
+ 0x0395, 0x0396, 0x0397, 0x00bd, 0x0398, 0x0399, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x039a, 0x039b, 0x039c,
+ 0x039d, 0x2563, 0x2551, 0x2557, 0x255d, 0x039e, 0x039f, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x03a0, 0x03a1,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x03a3,
+ 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8, 0x03a9, 0x03b1, 0x03b2,
+ 0x03b3, 0x2518, 0x250c, 0x2588, 0x2584, 0x03b4, 0x03b5, 0x2580,
+ 0x03b6, 0x03b7, 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd,
+ 0x03be, 0x03bf, 0x03c0, 0x03c1, 0x03c3, 0x03c2, 0x03c4, 0x00b4,
+ 0x00ad, 0x00b1, 0x03c5, 0x03c6, 0x03c7, 0x00a7, 0x03c8, 0x0385,
+ 0x00b0, 0x00a8, 0x03c9, 0x03cb, 0x03b0, 0x03ce, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM871" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm871_h
+#define ibm871_h
+
+#define cet_cs_name_ibm871 "IBM871"
+
+const char *cet_cs_alias_ibm871[] =
+{
+ "IBM871/CR-LF", "871/CR-LF", "CP871/CR-LF", "ebcdic-cp-is",
+ NULL
+};
+
+#define cet_ucs4_ofs_ibm871 4
+#define cet_ucs4_cnt_ibm871 252
+
+const int cet_ucs4_map_ibm871[cet_ucs4_cnt_ibm871] =
+{
+ 0x009c, 0x0009, 0x0086, 0x007f, 0x0097, 0x008d, 0x008e, 0x000b,
+ 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011, 0x0012, 0x0013,
+ 0x009d, 0x0085, 0x0008, 0x0087, 0x0018, 0x0019, 0x0092, 0x008f,
+ 0x001c, 0x001d, 0x001e, 0x001f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x000a, 0x0017, 0x001b, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x0005, 0x0006, 0x0007, 0x0090, 0x0091, 0x0016, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0004, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x0014, 0x0015, 0x009e, 0x001a, 0x0020, 0x00a0, 0x00e2, 0x00e4,
+ 0x00e0, 0x00e1, 0x00e3, 0x00e5, 0x00e7, 0x00f1, 0x00fe, 0x002e,
+ 0x003c, 0x0028, 0x002b, 0x0021, 0x0026, 0x00e9, 0x00ea, 0x00eb,
+ 0x00e8, 0x00ed, 0x00ee, 0x00ef, 0x00ec, 0x00df, 0x00c6, 0x0024,
+ 0x002a, 0x0029, 0x003b, 0x00d6, 0x002d, 0x002f, 0x00c2, 0x00c4,
+ 0x00c0, 0x00c1, 0x00c3, 0x00c5, 0x00c7, 0x00d1, 0x00a6, 0x002c,
+ 0x0025, 0x005f, 0x003e, 0x003f, 0x00f8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00f0, 0x003a, 0x0023,
+ 0x00d0, 0x0027, 0x003d, 0x0022, 0x00d8, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x00ab, 0x00bb,
+ 0x0060, 0x00fd, 0x007b, 0x00b1, 0x00b0, 0x006a, 0x006b, 0x006c,
+ 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x00aa, 0x00ba,
+ 0x007d, 0x00b8, 0x005d, 0x00a4, 0x00b5, 0x00f6, 0x0073, 0x0074,
+ 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00a1, 0x00bf,
+ 0x0040, 0x00dd, 0x005b, 0x00ae, 0x00a2, 0x00a3, 0x00a5, 0x00b7,
+ 0x00a9, 0x00a7, 0x00b6, 0x00bc, 0x00bd, 0x00be, 0x00ac, 0x007c,
+ 0x00af, 0x00a8, 0x005c, 0x00d7, 0x00de, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x00ad, 0x00f4,
+ 0x007e, 0x00f2, 0x00f3, 0x00f5, 0x00e6, 0x004a, 0x004b, 0x004c,
+ 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x00b9, 0x00fb,
+ 0x00fc, 0x00f9, 0x00fa, 0x00ff, 0x00b4, 0x00f7, 0x0053, 0x0054,
+ 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00b2, 0x00d4,
+ 0x005e, 0x00d2, 0x00d3, 0x00d5, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x00b3, 0x00db,
+ 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+
+#define cet_ucs4_to_ibm871_ct 236
+
+const cet_ucs4_link_t cet_ucs4_to_ibm871_links[cet_ucs4_to_ibm871_ct] =
+{
+ {0x0004, 0x37} /* of transmission (eot) */,
+ {0x0005, 0x2d} /* (enq) */,
+ {0x0006, 0x2e} /* (ack) */,
+ {0x0007, 0x2f} /* (bel) */,
+ {0x0008, 0x16} /* (bs) */,
+ {0x0009, 0x05} /* tabulation (ht) */,
+ {0x000a, 0x25} /* feed (lf) */,
+ {0x0014, 0x3c} /* control four (dc4) */,
+ {0x0015, 0x3d} /* acknowledge (nak) */,
+ {0x0016, 0x32} /* idle (syn) */,
+ {0x0017, 0x26} /* of transmission block (etb) */,
+ {0x001a, 0x3f} /* (sub) */,
+ {0x001b, 0x27} /* (esc) */,
+ {0x0020, 0x40} /* space */,
+ {0x0021, 0x4f} /* mark */,
+ {0x0022, 0x7f} /* mark */,
+ {0x0023, 0x7b} /* sign */,
+ {0x0024, 0x5b} /* sign */,
+ {0x0025, 0x6c} /* sign */,
+ {0x0026, 0x50} /* ampersand */,
+ {0x0027, 0x7d} /* apostrophe */,
+ {0x0028, 0x4d} /* parenthesis */,
+ {0x0029, 0x5d} /* parenthesis */,
+ {0x002a, 0x5c} /* asterisk */,
+ {0x002b, 0x4e} /* sign */,
+ {0x002c, 0x6b} /* comma */,
+ {0x002d, 0x60} /* hyphen-minus */,
+ {0x002e, 0x4b} /* stop */,
+ {0x002f, 0x61} /* solidus */,
+ {0x0030, 0xf0} /* zero */,
+ {0x0031, 0xf1} /* one */,
+ {0x0032, 0xf2} /* two */,
+ {0x0033, 0xf3} /* three */,
+ {0x0034, 0xf4} /* four */,
+ {0x0035, 0xf5} /* five */,
+ {0x0036, 0xf6} /* six */,
+ {0x0037, 0xf7} /* seven */,
+ {0x0038, 0xf8} /* eight */,
+ {0x0039, 0xf9} /* nine */,
+ {0x003a, 0x7a} /* colon */,
+ {0x003b, 0x5e} /* semicolon */,
+ {0x003c, 0x4c} /* sign */,
+ {0x003d, 0x7e} /* sign */,
+ {0x003e, 0x6e} /* sign */,
+ {0x003f, 0x6f} /* mark */,
+ {0x0040, 0xac} /* at */,
+ {0x0041, 0xc1} /* capital letter a */,
+ {0x0042, 0xc2} /* capital letter b */,
+ {0x0043, 0xc3} /* capital letter c */,
+ {0x0044, 0xc4} /* capital letter d */,
+ {0x0045, 0xc5} /* capital letter e */,
+ {0x0046, 0xc6} /* capital letter f */,
+ {0x0047, 0xc7} /* capital letter g */,
+ {0x0048, 0xc8} /* capital letter h */,
+ {0x0049, 0xc9} /* capital letter i */,
+ {0x004a, 0xd1} /* capital letter j */,
+ {0x004b, 0xd2} /* capital letter k */,
+ {0x004c, 0xd3} /* capital letter l */,
+ {0x004d, 0xd4} /* capital letter m */,
+ {0x004e, 0xd5} /* capital letter n */,
+ {0x004f, 0xd6} /* capital letter o */,
+ {0x0050, 0xd7} /* capital letter p */,
+ {0x0051, 0xd8} /* capital letter q */,
+ {0x0052, 0xd9} /* capital letter r */,
+ {0x0053, 0xe2} /* capital letter s */,
+ {0x0054, 0xe3} /* capital letter t */,
+ {0x0055, 0xe4} /* capital letter u */,
+ {0x0056, 0xe5} /* capital letter v */,
+ {0x0057, 0xe6} /* capital letter w */,
+ {0x0058, 0xe7} /* capital letter x */,
+ {0x0059, 0xe8} /* capital letter y */,
+ {0x005a, 0xe9} /* capital letter z */,
+ {0x005b, 0xae} /* square bracket */,
+ {0x005c, 0xbe} /* solidus */,
+ {0x005d, 0x9e} /* square bracket */,
+ {0x005e, 0xec} /* accent */,
+ {0x005f, 0x6d} /* line */,
+ {0x0060, 0x8c} /* accent */,
+ {0x0061, 0x81} /* small letter a */,
+ {0x0062, 0x82} /* small letter b */,
+ {0x0063, 0x83} /* small letter c */,
+ {0x0064, 0x84} /* small letter d */,
+ {0x0065, 0x85} /* small letter e */,
+ {0x0066, 0x86} /* small letter f */,
+ {0x0067, 0x87} /* small letter g */,
+ {0x0068, 0x88} /* small letter h */,
+ {0x0069, 0x89} /* small letter i */,
+ {0x006a, 0x91} /* small letter j */,
+ {0x006b, 0x92} /* small letter k */,
+ {0x006c, 0x93} /* small letter l */,
+ {0x006d, 0x94} /* small letter m */,
+ {0x006e, 0x95} /* small letter n */,
+ {0x006f, 0x96} /* small letter o */,
+ {0x0070, 0x97} /* small letter p */,
+ {0x0071, 0x98} /* small letter q */,
+ {0x0072, 0x99} /* small letter r */,
+ {0x0073, 0xa2} /* small letter s */,
+ {0x0074, 0xa3} /* small letter t */,
+ {0x0075, 0xa4} /* small letter u */,
+ {0x0076, 0xa5} /* small letter v */,
+ {0x0077, 0xa6} /* small letter w */,
+ {0x0078, 0xa7} /* small letter x */,
+ {0x0079, 0xa8} /* small letter y */,
+ {0x007a, 0xa9} /* small letter z */,
+ {0x007b, 0x8e} /* curly bracket */,
+ {0x007c, 0xbb} /* line */,
+ {0x007d, 0x9c} /* curly bracket */,
+ {0x007e, 0xcc} /* tilde */,
+ {0x007f, 0x07} /* (del) */,
+ {0x0080, 0x20} /* character (pad) */,
+ {0x0081, 0x21} /* octet preset (hop) */,
+ {0x0082, 0x22} /* permitted here (bph) */,
+ {0x0083, 0x23} /* break here (nbh) */,
+ {0x0084, 0x24} /* (ind) */,
+ {0x0085, 0x15} /* line (nel) */,
+ {0x0086, 0x06} /* of selected area (ssa) */,
+ {0x0087, 0x17} /* of selected area (esa) */,
+ {0x0088, 0x28} /* tabulation set (hts) */,
+ {0x0089, 0x29} /* tabulation with justification (htj) */,
+ {0x008a, 0x2a} /* tabulation set (vts) */,
+ {0x008b, 0x2b} /* line forward (pld) */,
+ {0x008c, 0x2c} /* line backward (plu) */,
+ {0x008d, 0x09} /* line feed (ri) */,
+ {0x008e, 0x0a} /* two (ss2) */,
+ {0x008f, 0x1b} /* three (ss3) */,
+ {0x0090, 0x30} /* control string (dcs) */,
+ {0x0091, 0x31} /* use one (pu1) */,
+ {0x0092, 0x1a} /* use two (pu2) */,
+ {0x0093, 0x33} /* transmit state (sts) */,
+ {0x0094, 0x34} /* character (cch) */,
+ {0x0095, 0x35} /* waiting (mw) */,
+ {0x0096, 0x36} /* of guarded area (spa) */,
+ {0x0097, 0x08} /* of guarded area (epa) */,
+ {0x0098, 0x38} /* of string (sos) */,
+ {0x0099, 0x39} /* graphic character introducer (sgci) */,
+ {0x009a, 0x3a} /* character introducer (sci) */,
+ {0x009b, 0x3b} /* sequence introducer (csi) */,
+ {0x009c, 0x04} /* terminator (st) */,
+ {0x009d, 0x14} /* system command (osc) */,
+ {0x009e, 0x3e} /* message (pm) */,
+ {0x009f, 0xff} /* program command (apc) */,
+ {0x00a0, 0x41} /* space */,
+ {0x00a1, 0xaa} /* exclamation mark */,
+ {0x00a2, 0xb0} /* sign */,
+ {0x00a3, 0xb1} /* sign */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a5, 0xb2} /* sign */,
+ {0x00a6, 0x6a} /* bar */,
+ {0x00a7, 0xb5} /* sign */,
+ {0x00a8, 0xbd} /* diaeresis */,
+ {0x00a9, 0xb4} /* sign */,
+ {0x00aa, 0x9a} /* ordinal indicator */,
+ {0x00ab, 0x8a} /* double angle quotation mark */,
+ {0x00ac, 0xba} /* sign */,
+ {0x00ad, 0xca} /* hyphen */,
+ {0x00ae, 0xaf} /* sign */,
+ {0x00af, 0xbc} /* macron */,
+ {0x00b0, 0x90} /* sign */,
+ {0x00b1, 0x8f} /* sign */,
+ {0x00b2, 0xea} /* two */,
+ {0x00b3, 0xfa} /* three */,
+ {0x00b4, 0xe0} /* accent */,
+ {0x00b5, 0xa0} /* sign */,
+ {0x00b7, 0xb3} /* dot */,
+ {0x00b8, 0x9d} /* cedilla */,
+ {0x00b9, 0xda} /* one */,
+ {0x00ba, 0x9b} /* ordinal indicator */,
+ {0x00bb, 0x8b} /* double angle quotation mark */,
+ {0x00bc, 0xb7} /* fraction one quarter */,
+ {0x00bd, 0xb8} /* fraction one half */,
+ {0x00be, 0xb9} /* fraction three quarters */,
+ {0x00bf, 0xab} /* question mark */,
+ {0x00c0, 0x64} /* capital letter a with grave */,
+ {0x00c1, 0x65} /* capital letter a with acute */,
+ {0x00c2, 0x62} /* capital letter a with circumflex */,
+ {0x00c3, 0x66} /* capital letter a with tilde */,
+ {0x00c4, 0x63} /* capital letter a with diaeresis */,
+ {0x00c5, 0x67} /* capital letter a with ring above */,
+ {0x00c6, 0x5a} /* capital letter ae */,
+ {0x00c7, 0x68} /* capital letter c with cedilla */,
+ {0x00c8, 0x74} /* capital letter e with grave */,
+ {0x00c9, 0x71} /* capital letter e with acute */,
+ {0x00ca, 0x72} /* capital letter e with circumflex */,
+ {0x00cb, 0x73} /* capital letter e with diaeresis */,
+ {0x00cc, 0x78} /* capital letter i with grave */,
+ {0x00cd, 0x75} /* capital letter i with acute */,
+ {0x00ce, 0x76} /* capital letter i with circumflex */,
+ {0x00cf, 0x77} /* capital letter i with diaeresis */,
+ {0x00d0, 0x7c} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x69} /* capital letter n with tilde */,
+ {0x00d2, 0xed} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xeb} /* capital letter o with circumflex */,
+ {0x00d5, 0xef} /* capital letter o with tilde */,
+ {0x00d6, 0x5f} /* capital letter o with diaeresis */,
+ {0x00d7, 0xbf} /* sign */,
+ {0x00d8, 0x80} /* capital letter o with stroke */,
+ {0x00d9, 0xfd} /* capital letter u with grave */,
+ {0x00da, 0xfe} /* capital letter u with acute */,
+ {0x00db, 0xfb} /* capital letter u with circumflex */,
+ {0x00dc, 0xfc} /* capital letter u with diaeresis */,
+ {0x00dd, 0xad} /* capital letter y with acute */,
+ {0x00de, 0xc0} /* capital letter thorn (icelandic) */,
+ {0x00df, 0x59} /* small letter sharp s (german) */,
+ {0x00e0, 0x44} /* small letter a with grave */,
+ {0x00e1, 0x45} /* small letter a with acute */,
+ {0x00e2, 0x42} /* small letter a with circumflex */,
+ {0x00e3, 0x46} /* small letter a with tilde */,
+ {0x00e4, 0x43} /* small letter a with diaeresis */,
+ {0x00e5, 0x47} /* small letter a with ring above */,
+ {0x00e6, 0xd0} /* small letter ae */,
+ {0x00e7, 0x48} /* small letter c with cedilla */,
+ {0x00e8, 0x54} /* small letter e with grave */,
+ {0x00e9, 0x51} /* small letter e with acute */,
+ {0x00ea, 0x52} /* small letter e with circumflex */,
+ {0x00eb, 0x53} /* small letter e with diaeresis */,
+ {0x00ec, 0x58} /* small letter i with grave */,
+ {0x00ed, 0x55} /* small letter i with acute */,
+ {0x00ee, 0x56} /* small letter i with circumflex */,
+ {0x00ef, 0x57} /* small letter i with diaeresis */,
+ {0x00f0, 0x79} /* small letter eth (icelandic) */,
+ {0x00f1, 0x49} /* small letter n with tilde */,
+ {0x00f2, 0xcd} /* small letter o with grave */,
+ {0x00f3, 0xce} /* small letter o with acute */,
+ {0x00f4, 0xcb} /* small letter o with circumflex */,
+ {0x00f5, 0xcf} /* small letter o with tilde */,
+ {0x00f6, 0xa1} /* small letter o with diaeresis */,
+ {0x00f7, 0xe1} /* sign */,
+ {0x00f8, 0x70} /* small letter o with stroke */,
+ {0x00f9, 0xdd} /* small letter u with grave */,
+ {0x00fa, 0xde} /* small letter u with acute */,
+ {0x00fb, 0xdb} /* small letter u with circumflex */,
+ {0x00fc, 0xdc} /* small letter u with diaeresis */,
+ {0x00fd, 0x8d} /* small letter y with acute */,
+ {0x00fe, 0x4a} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xdf} /* small letter y with diaeresis */
+};
+
+/*
+#define cet_ucs4_to_ibm871_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm871_extra[cet_ucs4_to_ibm871_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm871 = /* defined in cet.h */
+{
+ cet_cs_name_ibm871, /* name of character set */
+ cet_cs_alias_ibm871, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm871, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm871, /* first non standard character */
+ cet_ucs4_cnt_ibm871, /* number of values in table */
+
+ cet_ucs4_to_ibm871_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm871_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm871_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x009c, 0x0009, 0x0086, 0x007f,
+ 0x0097, 0x008d, 0x008e, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x009d, 0x0085, 0x0008, 0x0087,
+ 0x0018, 0x0019, 0x0092, 0x008f, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x000a, 0x0017, 0x001b,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x0005, 0x0006, 0x0007,
+ 0x0090, 0x0091, 0x0016, 0x0093, 0x0094, 0x0095, 0x0096, 0x0004,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x0014, 0x0015, 0x009e, 0x001a,
+ 0x0020, 0x00a0, 0x00e2, 0x00e4, 0x00e0, 0x00e1, 0x00e3, 0x00e5,
+ 0x00e7, 0x00f1, 0x00fe, 0x002e, 0x003c, 0x0028, 0x002b, 0x0021,
+ 0x0026, 0x00e9, 0x00ea, 0x00eb, 0x00e8, 0x00ed, 0x00ee, 0x00ef,
+ 0x00ec, 0x00df, 0x00c6, 0x0024, 0x002a, 0x0029, 0x003b, 0x00d6,
+ 0x002d, 0x002f, 0x00c2, 0x00c4, 0x00c0, 0x00c1, 0x00c3, 0x00c5,
+ 0x00c7, 0x00d1, 0x00a6, 0x002c, 0x0025, 0x005f, 0x003e, 0x003f,
+ 0x00f8, 0x00c9, 0x00ca, 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf,
+ 0x00cc, 0x00f0, 0x003a, 0x0023, 0x00d0, 0x0027, 0x003d, 0x0022,
+ 0x00d8, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x00ab, 0x00bb, 0x0060, 0x00fd, 0x007b, 0x00b1,
+ 0x00b0, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x00aa, 0x00ba, 0x007d, 0x00b8, 0x005d, 0x00a4,
+ 0x00b5, 0x00f6, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x00a1, 0x00bf, 0x0040, 0x00dd, 0x005b, 0x00ae,
+ 0x00a2, 0x00a3, 0x00a5, 0x00b7, 0x00a9, 0x00a7, 0x00b6, 0x00bc,
+ 0x00bd, 0x00be, 0x00ac, 0x007c, 0x00af, 0x00a8, 0x005c, 0x00d7,
+ 0x00de, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x00ad, 0x00f4, 0x007e, 0x00f2, 0x00f3, 0x00f5,
+ 0x00e6, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x00b9, 0x00fb, 0x00fc, 0x00f9, 0x00fa, 0x00ff,
+ 0x00b4, 0x00f7, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x00b2, 0x00d4, 0x005e, 0x00d2, 0x00d3, 0x00d5,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x00b3, 0x00db, 0x00dc, 0x00d9, 0x00da, 0x009f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM891" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm891_h
+#define ibm891_h
+
+#define cet_cs_name_ibm891 "IBM891"
+
+const char *cet_cs_alias_ibm891[] =
+{
+ "IBM891/CR-LF", "891/CR-LF", "CP891/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm891 128
+#define cet_ucs4_cnt_ibm891 0
+
+const int cet_ucs4_map_ibm891[cet_ucs4_cnt_ibm891] =
+{
+};
+
+#define cet_ucs4_to_ibm891_ct 0
+
+const cet_ucs4_link_t cet_ucs4_to_ibm891_links[cet_ucs4_to_ibm891_ct] =
+{
+};
+
+/*
+#define cet_ucs4_to_ibm891_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm891_extra[cet_ucs4_to_ibm891_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm891 = /* defined in cet.h */
+{
+ cet_cs_name_ibm891, /* name of character set */
+ cet_cs_alias_ibm891, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm891, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm891, /* first non standard character */
+ cet_ucs4_cnt_ibm891, /* number of values in table */
+
+ cet_ucs4_to_ibm891_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm891_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm891_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM903" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm903_h
+#define ibm903_h
+
+#define cet_cs_name_ibm903 "IBM903"
+
+const char *cet_cs_alias_ibm903[] =
+{
+ "IBM903/CR-LF", "903/CR-LF", "CP903/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm903 128
+#define cet_ucs4_cnt_ibm903 0
+
+const int cet_ucs4_map_ibm903[cet_ucs4_cnt_ibm903] =
+{
+};
+
+#define cet_ucs4_to_ibm903_ct 0
+
+const cet_ucs4_link_t cet_ucs4_to_ibm903_links[cet_ucs4_to_ibm903_ct] =
+{
+};
+
+/*
+#define cet_ucs4_to_ibm903_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm903_extra[cet_ucs4_to_ibm903_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm903 = /* defined in cet.h */
+{
+ cet_cs_name_ibm903, /* name of character set */
+ cet_cs_alias_ibm903, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm903, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm903, /* first non standard character */
+ cet_ucs4_cnt_ibm903, /* number of values in table */
+
+ cet_ucs4_to_ibm903_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm903_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm903_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IBM904" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ibm904_h
+#define ibm904_h
+
+#define cet_cs_name_ibm904 "IBM904"
+
+const char *cet_cs_alias_ibm904[] =
+{
+ "IBM904/CR-LF", "904/CR-LF", "CP904/CR-LF", NULL
+};
+
+#define cet_ucs4_ofs_ibm904 128
+#define cet_ucs4_cnt_ibm904 127
+
+const int cet_ucs4_map_ibm904[cet_ucs4_cnt_ibm904] =
+{
+ 0x00a2, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 0x00ac, 0x00a6
+};
+
+#define cet_ucs4_to_ibm904_ct 3
+
+const cet_ucs4_link_t cet_ucs4_to_ibm904_links[cet_ucs4_to_ibm904_ct] =
+{
+ {0x00a2, 0x80} /* sign */,
+ {0x00a6, 0xfe} /* bar */,
+ {0x00ac, 0xfd} /* sign */
+};
+
+/*
+#define cet_ucs4_to_ibm904_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ibm904_extra[cet_ucs4_to_ibm904_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ibm904 = /* defined in cet.h */
+{
+ cet_cs_name_ibm904, /* name of character set */
+ cet_cs_alias_ibm904, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ibm904, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ibm904, /* first non standard character */
+ cet_ucs4_cnt_ibm904, /* number of values in table */
+
+ cet_ucs4_to_ibm904_links, /* UCS-4 to char links */
+ cet_ucs4_to_ibm904_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ibm904_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00a2, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, 0x00ac, 0x00a6, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IEC_P27-1" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iec_p27_1_h
+#define iec_p27_1_h
+
+#define cet_cs_name_iec_p27_1 "IEC_P27-1"
+
+const char *cet_cs_alias_iec_p27_1[] =
+{
+ "IEC_P27-1", "iso-ir-143", NULL
+};
+
+#define cet_ucs4_ofs_iec_p27_1 160
+#define cet_ucs4_cnt_iec_p27_1 96
+
+const int cet_ucs4_map_iec_p27_1[cet_ucs4_cnt_iec_p27_1] =
+{
+ 0x02c7, 0x2261, 0x2227, 0x2228, 0x2229, 0x222a, 0x2282, 0x2283,
+ 0x21d0, 0x21d2, 0x2234, 0x2235, 0x2208, 0x220b, 0x2286, 0x2287,
+ 0x222b, 0x222e, 0x221e, 0x2207, 0x2202, 0x223c, 0x2248, 0x2243,
+ 0x2245, 0x2264, 0x2260, 0x2265, 0x2194, 0x00ac, 0x2200, 0x2203,
+ 0x05d0, 0x25a1, 0x2225, 0x0393, 0x0394, 0x22a5, 0x2220, 0x221f,
+ 0x0398, 0x2329, 0x232a, 0x039b, 0x2032, 0x2033, 0x039e, 0x2213,
+ 0x03a0, 0x00b2, 0x03a3, 0x00d7, 0x00b3, 0x03a5, 0x03a6, 0x00b7,
+ 0x03a8, 0x03a9, 0x2205, 0x21c0, 0x221a, 0x0192, 0x221d, 0x00b1,
+ 0x00b0, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
+ 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x2030,
+ 0x03c0, 0x03c1, 0x03c3, 0x00f7, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
+ 0x03c8, 0x03c9, 0x2020, 0x2190, 0x2191, 0x2192, 0x2193, 0x203e
+};
+
+#define cet_ucs4_to_iec_p27_1_ct 96
+
+const cet_ucs4_link_t cet_ucs4_to_iec_p27_1_links[cet_ucs4_to_iec_p27_1_ct] =
+{
+ {0x00ac, 0xbd} /* sign */,
+ {0x00b0, 0xe0} /* sign */,
+ {0x00b1, 0xdf} /* sign */,
+ {0x00b2, 0xd1} /* two */,
+ {0x00b3, 0xd4} /* three */,
+ {0x00b7, 0xd7} /* dot */,
+ {0x00d7, 0xd3} /* sign */,
+ {0x00f7, 0xf3} /* sign */,
+ {0x0192, 0xdd} /* minuscule latine f hameçon */,
+ {0x02c7, 0xa0} /* caron */,
+ {0x0393, 0xc3} /* capital letter gamma */,
+ {0x0394, 0xc4} /* capital letter delta */,
+ {0x0398, 0xc8} /* capital letter theta */,
+ {0x039b, 0xcb} /* capital letter lamda */,
+ {0x039e, 0xce} /* capital letter xi */,
+ {0x03a0, 0xd0} /* capital letter pi */,
+ {0x03a3, 0xd2} /* capital letter sigma */,
+ {0x03a5, 0xd5} /* capital letter upsilon */,
+ {0x03a6, 0xd6} /* capital letter phi */,
+ {0x03a8, 0xd8} /* capital letter psi */,
+ {0x03a9, 0xd9} /* capital letter omega */,
+ {0x03b1, 0xe1} /* small letter alpha */,
+ {0x03b2, 0xe2} /* small letter beta */,
+ {0x03b3, 0xe3} /* small letter gamma */,
+ {0x03b4, 0xe4} /* small letter delta */,
+ {0x03b5, 0xe5} /* small letter epsilon */,
+ {0x03b6, 0xe6} /* small letter zeta */,
+ {0x03b7, 0xe7} /* small letter eta */,
+ {0x03b8, 0xe8} /* small letter theta */,
+ {0x03b9, 0xe9} /* small letter iota */,
+ {0x03ba, 0xea} /* small letter kappa */,
+ {0x03bb, 0xeb} /* small letter lamda */,
+ {0x03bc, 0xec} /* small letter mu */,
+ {0x03bd, 0xed} /* small letter nu */,
+ {0x03be, 0xee} /* small letter xi */,
+ {0x03c0, 0xf0} /* small letter pi */,
+ {0x03c1, 0xf1} /* small letter rho */,
+ {0x03c3, 0xf2} /* small letter sigma */,
+ {0x03c4, 0xf4} /* small letter tau */,
+ {0x03c5, 0xf5} /* small letter upsilon */,
+ {0x03c6, 0xf6} /* small letter phi */,
+ {0x03c7, 0xf7} /* small letter chi */,
+ {0x03c8, 0xf8} /* small letter psi */,
+ {0x03c9, 0xf9} /* small letter omega */,
+ {0x05d0, 0xc0} /* letter alef */,
+ {0x2020, 0xfa} /* dagger */,
+ {0x2030, 0xef} /* mille sign */,
+ {0x2032, 0xcc} /* prime */,
+ {0x2033, 0xcd} /* prime */,
+ {0x203e, 0xff} /* overline */,
+ {0x2190, 0xfb} /* arrow */,
+ {0x2191, 0xfc} /* arrow */,
+ {0x2192, 0xfd} /* arrow */,
+ {0x2193, 0xfe} /* arrow */,
+ {0x2194, 0xbc} /* right arrow */,
+ {0x21c0, 0xdb} /* vector above (iso-10646-1dis 032/032/038/046) */,
+ {0x21d0, 0xa8} /* double arrow */,
+ {0x21d2, 0xa9} /* double arrow */,
+ {0x2200, 0xbe} /* all */,
+ {0x2202, 0xb4} /* differential */,
+ {0x2203, 0xbf} /* exists */,
+ {0x2205, 0xda} /* set */,
+ {0x2207, 0xb3} /* nabla */,
+ {0x2208, 0xac} /* of */,
+ {0x220b, 0xad} /* as member */,
+ {0x2213, 0xcf} /* sign */,
+ {0x221a, 0xdc} /* root */,
+ {0x221d, 0xde} /* to */,
+ {0x221e, 0xb2} /* infinity */,
+ {0x221f, 0xc7} /* angle */,
+ {0x2220, 0xc6} /* angle */,
+ {0x2225, 0xc2} /* to */,
+ {0x2227, 0xa2} /* and */,
+ {0x2228, 0xa3} /* or */,
+ {0x2229, 0xa4} /* intersection */,
+ {0x222a, 0xa5} /* union */,
+ {0x222b, 0xb0} /* integral */,
+ {0x222e, 0xb1} /* integral */,
+ {0x2234, 0xaa} /* therefore */,
+ {0x2235, 0xab} /* because */,
+ {0x223c, 0xb5} /* operator */,
+ {0x2243, 0xb7} /* equal to */,
+ {0x2245, 0xb8} /* equal to */,
+ {0x2248, 0xb6} /* equal to */,
+ {0x2260, 0xba} /* equal to */,
+ {0x2261, 0xa1} /* to */,
+ {0x2264, 0xb9} /* or equal to */,
+ {0x2265, 0xbb} /* or equal to */,
+ {0x2282, 0xa6} /* of */,
+ {0x2283, 0xa7} /* of */,
+ {0x2286, 0xae} /* of or equal to */,
+ {0x2287, 0xaf} /* of or equal to */,
+ {0x22a5, 0xc5} /* tack */,
+ {0x2329, 0xc9} /* angle bracket */,
+ {0x232a, 0xca} /* angle bracket */,
+ {0x25a1, 0xc1} /* square */
+};
+
+/*
+#define cet_ucs4_to_iec_p27_1_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iec_p27_1_extra[cet_ucs4_to_iec_p27_1_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iec_p27_1 = /* defined in cet.h */
+{
+ cet_cs_name_iec_p27_1, /* name of character set */
+ cet_cs_alias_iec_p27_1, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iec_p27_1, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iec_p27_1, /* first non standard character */
+ cet_ucs4_cnt_iec_p27_1, /* number of values in table */
+
+ cet_ucs4_to_iec_p27_1_links, /* UCS-4 to char links */
+ cet_ucs4_to_iec_p27_1_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iec_p27_1_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x02c7, 0x2261, 0x2227, 0x2228, 0x2229, 0x222a, 0x2282, 0x2283,
+ 0x21d0, 0x21d2, 0x2234, 0x2235, 0x2208, 0x220b, 0x2286, 0x2287,
+ 0x222b, 0x222e, 0x221e, 0x2207, 0x2202, 0x223c, 0x2248, 0x2243,
+ 0x2245, 0x2264, 0x2260, 0x2265, 0x2194, 0x00ac, 0x2200, 0x2203,
+ 0x05d0, 0x25a1, 0x2225, 0x0393, 0x0394, 0x22a5, 0x2220, 0x221f,
+ 0x0398, 0x2329, 0x232a, 0x039b, 0x2032, 0x2033, 0x039e, 0x2213,
+ 0x03a0, 0x00b2, 0x03a3, 0x00d7, 0x00b3, 0x03a5, 0x03a6, 0x00b7,
+ 0x03a8, 0x03a9, 0x2205, 0x21c0, 0x221a, 0x0192, 0x221d, 0x00b1,
+ 0x00b0, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
+ 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x2030,
+ 0x03c0, 0x03c1, 0x03c3, 0x00f7, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
+ 0x03c8, 0x03c9, 0x2020, 0x2190, 0x2191, 0x2192, 0x2193, 0x203e
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO_10367-box" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_10367_box_h
+#define iso_10367_box_h
+
+#define cet_cs_name_iso_10367_box "ISO_10367-box"
+
+const char *cet_cs_alias_iso_10367_box[] =
+{
+ "ISO_10367-box", "iso-ir-155", NULL
+};
+
+#define cet_ucs4_ofs_iso_10367_box 160
+#define cet_ucs4_cnt_iso_10367_box 62
+
+const int cet_ucs4_map_iso_10367_box[cet_ucs4_cnt_iso_10367_box] =
+{
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x2551, 0x2550, 0x2554, 0x2557, 0x255a, 0x255d, 0x2560, 0x2563,
+ 0x2566, 0x2569, 0x256c, 0xe019, 0x2584, 0x2588, 0x25aa, -1,
+ 0x2502, 0x2500, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+ 0x252c, 0x2534, 0x253c, 0x2591, 0x2592, 0x2593
+};
+
+#define cet_ucs4_to_iso_10367_box_ct 29
+
+const cet_ucs4_link_t cet_ucs4_to_iso_10367_box_links[cet_ucs4_to_iso_10367_box_ct] =
+{
+ {0x2500, 0xd1} /* drawings light horizontal */,
+ {0x2502, 0xd0} /* drawings light vertical */,
+ {0x250c, 0xd2} /* drawings light down and right */,
+ {0x2510, 0xd3} /* drawings light down and left */,
+ {0x2514, 0xd4} /* drawings light up and right */,
+ {0x2518, 0xd5} /* drawings light up and left */,
+ {0x251c, 0xd6} /* drawings light vertical and right */,
+ {0x2524, 0xd7} /* drawings light vertical and left */,
+ {0x252c, 0xd8} /* drawings light down and horizontal */,
+ {0x2534, 0xd9} /* drawings light up and horizontal */,
+ {0x253c, 0xda} /* drawings light vertical and horizontal */,
+ {0x2550, 0xc1} /* drawings heavy horizontal */,
+ {0x2551, 0xc0} /* drawings heavy vertical */,
+ {0x2554, 0xc2} /* drawings heavy down and right */,
+ {0x2557, 0xc3} /* drawings heavy down and left */,
+ {0x255a, 0xc4} /* drawings heavy up and right */,
+ {0x255d, 0xc5} /* drawings heavy up and left */,
+ {0x2560, 0xc6} /* drawings heavy vertical and right */,
+ {0x2563, 0xc7} /* drawings heavy vertical and left */,
+ {0x2566, 0xc8} /* drawings heavy down and horizontal */,
+ {0x2569, 0xc9} /* drawings heavy up and horizontal */,
+ {0x256c, 0xca} /* drawings heavy vertical and horizontal */,
+ {0x2584, 0xcc} /* half block */,
+ {0x2588, 0xcd} /* block */,
+ {0x2591, 0xdb} /* shade */,
+ {0x2592, 0xdc} /* shade */,
+ {0x2593, 0xdd} /* shade */,
+ {0x25aa, 0xce} /* small square */,
+ {0xe019, 0xcb} /* space b (iso-ir-8-1 096) */
+};
+
+/*
+#define cet_ucs4_to_iso_10367_box_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_10367_box_extra[cet_ucs4_to_iso_10367_box_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_10367_box = /* defined in cet.h */
+{
+ cet_cs_name_iso_10367_box, /* name of character set */
+ cet_cs_alias_iso_10367_box, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_10367_box, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_10367_box, /* first non standard character */
+ cet_ucs4_cnt_iso_10367_box, /* number of values in table */
+
+ cet_ucs4_to_iso_10367_box_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_10367_box_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_10367_box_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x2551, 0x2550, 0x2554, 0x2557, 0x255a, 0x255d, 0x2560, 0x2563,
+ 0x2566, 0x2569, 0x256c, 0xe019, 0x2584, 0x2588, 0x25aa, -1,
+ 0x2502, 0x2500, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+ 0x252c, 0x2534, 0x253c, 0x2591, 0x2592, 0x2593, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO_5427" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_5427_h
+#define iso_5427_h
+
+#define cet_cs_name_iso_5427 "ISO_5427"
+
+const char *cet_cs_alias_iso_5427[] =
+{
+ "ISO_5427", "iso-ir-37", NULL
+};
+
+#define cet_ucs4_ofs_iso_5427 36
+#define cet_ucs4_cnt_iso_5427 92
+
+const int cet_ucs4_map_iso_5427[cet_ucs4_cnt_iso_5427] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x044e, 0x0430, 0x0431, 0x0446,
+ 0x0434, 0x0435, 0x0444, 0x0433, 0x0445, 0x0438, 0x0439, 0x043a,
+ 0x043b, 0x043c, 0x043d, 0x043e, 0x043f, 0x044f, 0x0440, 0x0441,
+ 0x0442, 0x0443, 0x0436, 0x0432, 0x044c, 0x044b, 0x0437, 0x0448,
+ 0x044d, 0x0449, 0x0447, 0x044a, 0x042e, 0x0410, 0x0411, 0x0426,
+ 0x0414, 0x0415, 0x0424, 0x0413, 0x0425, 0x0418, 0x0419, 0x041a,
+ 0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 0x042f, 0x0420, 0x0421,
+ 0x0422, 0x0423, 0x0416, 0x0412, 0x042c, 0x042b, 0x0417, 0x0428,
+ 0x042d, 0x0429, 0x0427, 0x007f
+};
+
+#define cet_ucs4_to_iso_5427_ct 64
+
+const cet_ucs4_link_t cet_ucs4_to_iso_5427_links[cet_ucs4_to_iso_5427_ct] =
+{
+ {0x00a4, 0x24} /* sign */,
+ {0x0410, 0x61} /* capital letter a */,
+ {0x0411, 0x62} /* capital letter be */,
+ {0x0412, 0x77} /* capital letter ve */,
+ {0x0413, 0x67} /* capital letter ghe */,
+ {0x0414, 0x64} /* capital letter de */,
+ {0x0415, 0x65} /* capital letter ie */,
+ {0x0416, 0x76} /* capital letter zhe */,
+ {0x0417, 0x7a} /* capital letter ze */,
+ {0x0418, 0x69} /* capital letter i */,
+ {0x0419, 0x6a} /* capital letter short i */,
+ {0x041a, 0x6b} /* capital letter ka */,
+ {0x041b, 0x6c} /* capital letter el */,
+ {0x041c, 0x6d} /* capital letter em */,
+ {0x041d, 0x6e} /* capital letter en */,
+ {0x041e, 0x6f} /* capital letter o */,
+ {0x041f, 0x70} /* capital letter pe */,
+ {0x0420, 0x72} /* capital letter er */,
+ {0x0421, 0x73} /* capital letter es */,
+ {0x0422, 0x74} /* capital letter te */,
+ {0x0423, 0x75} /* capital letter u */,
+ {0x0424, 0x66} /* capital letter ef */,
+ {0x0425, 0x68} /* capital letter ha */,
+ {0x0426, 0x63} /* capital letter tse */,
+ {0x0427, 0x7e} /* capital letter che */,
+ {0x0428, 0x7b} /* capital letter sha */,
+ {0x0429, 0x7d} /* capital letter shcha */,
+ {0x042b, 0x79} /* capital letter yeru */,
+ {0x042c, 0x78} /* capital letter soft sign */,
+ {0x042d, 0x7c} /* capital letter e */,
+ {0x042e, 0x60} /* capital letter yu */,
+ {0x042f, 0x71} /* capital letter ya */,
+ {0x0430, 0x41} /* small letter a */,
+ {0x0431, 0x42} /* small letter be */,
+ {0x0432, 0x57} /* small letter ve */,
+ {0x0433, 0x47} /* small letter ghe */,
+ {0x0434, 0x44} /* small letter de */,
+ {0x0435, 0x45} /* small letter ie */,
+ {0x0436, 0x56} /* small letter zhe */,
+ {0x0437, 0x5a} /* small letter ze */,
+ {0x0438, 0x49} /* small letter i */,
+ {0x0439, 0x4a} /* small letter short i */,
+ {0x043a, 0x4b} /* small letter ka */,
+ {0x043b, 0x4c} /* small letter el */,
+ {0x043c, 0x4d} /* small letter em */,
+ {0x043d, 0x4e} /* small letter en */,
+ {0x043e, 0x4f} /* small letter o */,
+ {0x043f, 0x50} /* small letter pe */,
+ {0x0440, 0x52} /* small letter er */,
+ {0x0441, 0x53} /* small letter es */,
+ {0x0442, 0x54} /* small letter te */,
+ {0x0443, 0x55} /* small letter u */,
+ {0x0444, 0x46} /* small letter ef */,
+ {0x0445, 0x48} /* small letter ha */,
+ {0x0446, 0x43} /* small letter tse */,
+ {0x0447, 0x5e} /* small letter che */,
+ {0x0448, 0x5b} /* small letter sha */,
+ {0x0449, 0x5d} /* small letter shcha */,
+ {0x044a, 0x5f} /* small letter hard sign */,
+ {0x044b, 0x59} /* small letter yeru */,
+ {0x044c, 0x58} /* small letter soft sign */,
+ {0x044d, 0x5c} /* small letter e */,
+ {0x044e, 0x40} /* small letter yu */,
+ {0x044f, 0x51} /* small letter ya */
+};
+
+/*
+#define cet_ucs4_to_iso_5427_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_5427_extra[cet_ucs4_to_iso_5427_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_5427 = /* defined in cet.h */
+{
+ cet_cs_name_iso_5427, /* name of character set */
+ cet_cs_alias_iso_5427, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_5427, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_5427, /* first non standard character */
+ cet_ucs4_cnt_iso_5427, /* number of values in table */
+
+ cet_ucs4_to_iso_5427_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_5427_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_5427_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+ 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO_646.irv" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_646_irv_h
+#define iso_646_irv_h
+
+#define cet_cs_name_iso_646_irv "ISO_646.irv"
+
+const char *cet_cs_alias_iso_646_irv[] =
+{
+ "ISO_646.irv", "irv", "iso-ir-2", "ISO_646.irv:1983",
+ NULL
+};
+
+#define cet_ucs4_ofs_iso_646_irv 36
+#define cet_ucs4_cnt_iso_646_irv 92
+
+const int cet_ucs4_map_iso_646_irv[cet_ucs4_cnt_iso_646_irv] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b,
+ 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b,
+ 0x007c, 0x007d, 0x203e, 0x007f
+};
+
+#define cet_ucs4_to_iso_646_irv_ct 2
+
+const cet_ucs4_link_t cet_ucs4_to_iso_646_irv_links[cet_ucs4_to_iso_646_irv_ct] =
+{
+ {0x00a4, 0x24} /* sign */,
+ {0x203e, 0x7e} /* overline */
+};
+
+/*
+#define cet_ucs4_to_iso_646_irv_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_646_irv_extra[cet_ucs4_to_iso_646_irv_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_646_irv = /* defined in cet.h */
+{
+ cet_cs_name_iso_646_irv, /* name of character set */
+ cet_cs_alias_iso_646_irv, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_646_irv, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_646_irv, /* first non standard character */
+ cet_ucs4_cnt_iso_646_irv, /* number of values in table */
+
+ cet_ucs4_to_iso_646_irv_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_646_irv_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_646_irv_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x203e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO_6937-2-25" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_6937_2_25_h
+#define iso_6937_2_25_h
+
+#define cet_cs_name_iso_6937_2_25 "ISO_6937-2-25"
+
+const char *cet_cs_alias_iso_6937_2_25[] =
+{
+ "ISO_6937-2-25", "iso-ir-152", NULL
+};
+
+#define cet_ucs4_ofs_iso_6937_2_25 36
+#define cet_ucs4_cnt_iso_6937_2_25 218
+
+const int cet_ucs4_map_iso_6937_2_25[cet_ucs4_cnt_iso_6937_2_25] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b,
+ 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b,
+ 0x007c, 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x009c, 0x009d, 0x009e, 0x009f, 0x00a0, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 0x201c, -1,
+ 0x2190, 0x2191, 0x2192, 0x2193, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 0x201d, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x2122, 0x266a, -1, -1, -1, -1, -1, -1,
+ 0x215b, 0x215c, 0x215d, 0x215e, 0x2126, -1, -1, -1,
+ -1, -1, 0x0132, 0x013f, -1, -1, 0x0152, -1,
+ 0x0174, 0x0176, 0x0178, 0x0149, -1, -1, -1, -1,
+ -1, -1, 0x0133, 0x0140, -1, -1, 0x0153, -1,
+ 0x0175, 0x0177
+};
+
+#define cet_ucs4_to_iso_6937_2_25_ct 26
+
+const cet_ucs4_link_t cet_ucs4_to_iso_6937_2_25_links[cet_ucs4_to_iso_6937_2_25_ct] =
+{
+ {0x00a4, 0x24} /* sign */,
+ {0x0132, 0xe6} /* capital ligature ij */,
+ {0x0133, 0xf6} /* small ligature ij */,
+ {0x013f, 0xe7} /* capital letter l with middle dot */,
+ {0x0140, 0xf7} /* small letter l with middle dot */,
+ {0x0149, 0xef} /* small letter n preceded by apostrophe */,
+ {0x0152, 0xea} /* capital ligature oe */,
+ {0x0153, 0xfa} /* small ligature oe */,
+ {0x0174, 0xec} /* capital letter w with circumflex */,
+ {0x0175, 0xfc} /* small letter w with circumflex */,
+ {0x0176, 0xed} /* capital letter y with circumflex */,
+ {0x0177, 0xfd} /* small letter y with circumflex */,
+ {0x0178, 0xee} /* capital letter y with diaeresis */,
+ {0x201c, 0xaa} /* double quotation mark */,
+ {0x201d, 0xba} /* double quotation mark */,
+ {0x2122, 0xd4} /* mark sign */,
+ {0x2126, 0xe0} /* sign */,
+ {0x215b, 0xdc} /* fraction one eighth */,
+ {0x215c, 0xdd} /* fraction three eighths */,
+ {0x215d, 0xde} /* fraction five eighths */,
+ {0x215e, 0xdf} /* fraction seven eighths */,
+ {0x2190, 0xac} /* arrow */,
+ {0x2191, 0xad} /* arrow */,
+ {0x2192, 0xae} /* arrow */,
+ {0x2193, 0xaf} /* arrow */,
+ {0x266a, 0xd5} /* note */
+};
+
+/*
+#define cet_ucs4_to_iso_6937_2_25_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_6937_2_25_extra[cet_ucs4_to_iso_6937_2_25_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_6937_2_25 = /* defined in cet.h */
+{
+ cet_cs_name_iso_6937_2_25, /* name of character set */
+ cet_cs_alias_iso_6937_2_25, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_6937_2_25, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_6937_2_25, /* first non standard character */
+ cet_ucs4_cnt_iso_6937_2_25, /* number of values in table */
+
+ cet_ucs4_to_iso_6937_2_25_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_6937_2_25_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_6937_2_25_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 0x201c, -1, 0x2190, 0x2191, 0x2192, 0x2193,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 0x201d, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, 0x2122, 0x266a, -1, -1,
+ -1, -1, -1, -1, 0x215b, 0x215c, 0x215d, 0x215e,
+ 0x2126, -1, -1, -1, -1, -1, 0x0132, 0x013f,
+ -1, -1, 0x0152, -1, 0x0174, 0x0176, 0x0178, 0x0149,
+ -1, -1, -1, -1, -1, -1, 0x0133, 0x0140,
+ -1, -1, 0x0153, -1, 0x0175, 0x0177, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-1" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_1_h
+#define iso_8859_1_h
+
+#define cet_cs_name_iso_8859_1 "ISO-8859-1"
+
+const char *cet_cs_alias_iso_8859_1[] =
+{
+ "ISO-8859-1", "819/CR-LF", "CP819/CR-LF", "csISOLatin1",
+ "IBM819/CR-LF", "ISO8859-1", "iso-ir-100", "ISO_8859-1",
+ "ISO_8859-1:1987", "l1", "lat1", "latin1",
+ "Latin-1", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_1 256
+#define cet_ucs4_cnt_iso_8859_1 0
+
+const int cet_ucs4_map_iso_8859_1[cet_ucs4_cnt_iso_8859_1] =
+{
+};
+
+#define cet_ucs4_to_iso_8859_1_ct 0
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_1_links[cet_ucs4_to_iso_8859_1_ct] =
+{
+};
+
+/*
+#define cet_ucs4_to_iso_8859_1_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_1_extra[cet_ucs4_to_iso_8859_1_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_1 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_1, /* name of character set */
+ cet_cs_alias_iso_8859_1, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_1, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_1, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_1, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_1_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_1_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_1_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-10" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_10_h
+#define iso_8859_10_h
+
+#define cet_cs_name_iso_8859_10 "ISO-8859-10"
+
+const char *cet_cs_alias_iso_8859_10[] =
+{
+ "ISO-8859-10", "csISOLatin6", "ISO8859-10", "iso-ir-157",
+ "ISO_8859-10", "ISO_8859-10:1992", "ISO_8859-10:1993", "L6",
+ "latin6", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_10 161
+#define cet_ucs4_cnt_iso_8859_10 95
+
+const int cet_ucs4_map_iso_8859_10[cet_ucs4_cnt_iso_8859_10] =
+{
+ 0x0104, 0x0112, 0x0122, 0x012a, 0x0128, 0x0136, 0x00a7, 0x013b,
+ 0x0110, 0x0160, 0x0166, 0x017d, 0x00ad, 0x016a, 0x014a, 0x00b0,
+ 0x0105, 0x0113, 0x0123, 0x012b, 0x0129, 0x0137, 0x00b7, 0x013c,
+ 0x0111, 0x0161, 0x0167, 0x017e, 0x2014, 0x016b, 0x014b, 0x0100,
+ 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x012e, 0x010c,
+ 0x00c9, 0x0118, 0x00cb, 0x0116, 0x00cd, 0x00ce, 0x00cf, 0x00d0,
+ 0x0145, 0x014c, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x0168, 0x00d8,
+ 0x0172, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df, 0x0101,
+ 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x012f, 0x010d,
+ 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x00ef, 0x00f0,
+ 0x0146, 0x014d, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x0169, 0x00f8,
+ 0x0173, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x0138
+};
+
+#define cet_ucs4_to_iso_8859_10_ct 46
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_10_links[cet_ucs4_to_iso_8859_10_ct] =
+{
+ {0x0100, 0xc0} /* capital letter a with macron */,
+ {0x0101, 0xe0} /* small letter a with macron */,
+ {0x0104, 0xa1} /* capital letter a with ogonek */,
+ {0x0105, 0xb1} /* small letter a with ogonek */,
+ {0x010c, 0xc8} /* capital letter c with caron */,
+ {0x010d, 0xe8} /* small letter c with caron */,
+ {0x0110, 0xa9} /* capital letter d with stroke */,
+ {0x0111, 0xb9} /* small letter d with stroke */,
+ {0x0112, 0xa2} /* capital letter e with macron */,
+ {0x0113, 0xb2} /* small letter e with macron */,
+ {0x0116, 0xcc} /* capital letter e with dot above */,
+ {0x0117, 0xec} /* small letter e with dot above */,
+ {0x0118, 0xca} /* capital letter e with ogonek */,
+ {0x0119, 0xea} /* small letter e with ogonek */,
+ {0x0122, 0xa3} /* capital letter g with cedilla */,
+ {0x0123, 0xb3} /* small letter g with cedilla */,
+ {0x0128, 0xa5} /* capital letter i with tilde */,
+ {0x0129, 0xb5} /* small letter i with tilde */,
+ {0x012a, 0xa4} /* capital letter i with macron */,
+ {0x012b, 0xb4} /* small letter i with macron */,
+ {0x012e, 0xc7} /* capital letter i with ogonek */,
+ {0x012f, 0xe7} /* small letter i with ogonek */,
+ {0x0136, 0xa6} /* capital letter k with cedilla */,
+ {0x0137, 0xb6} /* small letter k with cedilla */,
+ {0x0138, 0xff} /* small letter kra (greenlandic) */,
+ {0x013b, 0xa8} /* capital letter l with cedilla */,
+ {0x013c, 0xb8} /* small letter l with cedilla */,
+ {0x0145, 0xd1} /* capital letter n with cedilla */,
+ {0x0146, 0xf1} /* small letter n with cedilla */,
+ {0x014a, 0xaf} /* capital letter eng (lappish) */,
+ {0x014b, 0xbf} /* small letter eng (lappish) */,
+ {0x014c, 0xd2} /* capital letter o with macron */,
+ {0x014d, 0xf2} /* small letter o with macron */,
+ {0x0160, 0xaa} /* capital letter s with caron */,
+ {0x0161, 0xba} /* small letter s with caron */,
+ {0x0166, 0xab} /* capital letter t with stroke */,
+ {0x0167, 0xbb} /* small letter t with stroke */,
+ {0x0168, 0xd7} /* capital letter u with tilde */,
+ {0x0169, 0xf7} /* small letter u with tilde */,
+ {0x016a, 0xae} /* capital letter u with macron */,
+ {0x016b, 0xbe} /* small letter u with macron */,
+ {0x0172, 0xd9} /* capital letter u with ogonek */,
+ {0x0173, 0xf9} /* small letter u with ogonek */,
+ {0x017d, 0xac} /* capital letter z with caron */,
+ {0x017e, 0xbc} /* small letter z with caron */,
+ {0x2014, 0xbd} /* dash */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_10_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_10_extra[cet_ucs4_to_iso_8859_10_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_10 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_10, /* name of character set */
+ cet_cs_alias_iso_8859_10, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_10, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_10, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_10, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_10_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_10_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_10_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x0104, 0x0112, 0x0122, 0x012a, 0x0128, 0x0136, 0x00a7,
+ 0x013b, 0x0110, 0x0160, 0x0166, 0x017d, 0x00ad, 0x016a, 0x014a,
+ 0x00b0, 0x0105, 0x0113, 0x0123, 0x012b, 0x0129, 0x0137, 0x00b7,
+ 0x013c, 0x0111, 0x0161, 0x0167, 0x017e, 0x2014, 0x016b, 0x014b,
+ 0x0100, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x012e,
+ 0x010c, 0x00c9, 0x0118, 0x00cb, 0x0116, 0x00cd, 0x00ce, 0x00cf,
+ 0x00d0, 0x0145, 0x014c, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x0168,
+ 0x00d8, 0x0172, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
+ 0x0101, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x012f,
+ 0x010d, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x00ef,
+ 0x00f0, 0x0146, 0x014d, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x0169,
+ 0x00f8, 0x0173, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x0138
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-13" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_13_h
+#define iso_8859_13_h
+
+#define cet_cs_name_iso_8859_13 "ISO-8859-13"
+
+const char *cet_cs_alias_iso_8859_13[] =
+{
+ "ISO-8859-13", "ISO8859-13", "iso-baltic", "ISO-IR-179",
+ "iso-ir-179a", "ISO_8859-13", "ISO_8859-13:1998", "l7",
+ "latin7", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_13 165
+#define cet_ucs4_cnt_iso_8859_13 91
+
+const int cet_ucs4_map_iso_8859_13[cet_ucs4_cnt_iso_8859_13] =
+{
+ 0x201e, 0x00a6, 0x00a7, 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac,
+ 0x00ad, 0x00ae, 0x00af, 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x201c,
+ 0x00b5, 0x00b6, 0x00b7, 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc,
+ 0x00bd, 0x00be, 0x00bf, 0x0104, 0x012e, 0x0100, 0x0106, 0x00c4,
+ 0x00c5, 0x0118, 0x0112, 0x010c, 0x00c9, 0x0179, 0x0116, 0x0122,
+ 0x0136, 0x012a, 0x013b, 0x0160, 0x0143, 0x0145, 0x00d3, 0x014c,
+ 0x00d5, 0x00d6, 0x00d7, 0x0172, 0x0141, 0x015a, 0x016a, 0x00dc,
+ 0x017b, 0x017d, 0x00df, 0x0105, 0x012f, 0x0101, 0x0107, 0x00e4,
+ 0x00e5, 0x0119, 0x0113, 0x010d, 0x00e9, 0x017a, 0x0117, 0x0123,
+ 0x0137, 0x012b, 0x013c, 0x0161, 0x0144, 0x0146, 0x00f3, 0x014d,
+ 0x00f5, 0x00f6, 0x00f7, 0x0173, 0x0142, 0x015b, 0x016b, 0x00fc,
+ 0x017c, 0x017e, 0x2019
+};
+
+#define cet_ucs4_to_iso_8859_13_ct 49
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_13_links[cet_ucs4_to_iso_8859_13_ct] =
+{
+ {0x0100, 0xc2} /* capital letter a with macron */,
+ {0x0101, 0xe2} /* small letter a with macron */,
+ {0x0104, 0xc0} /* capital letter a with ogonek */,
+ {0x0105, 0xe0} /* small letter a with ogonek */,
+ {0x0106, 0xc3} /* capital letter c with acute */,
+ {0x0107, 0xe3} /* small letter c with acute */,
+ {0x010c, 0xc8} /* capital letter c with caron */,
+ {0x010d, 0xe8} /* small letter c with caron */,
+ {0x0112, 0xc7} /* capital letter e with macron */,
+ {0x0113, 0xe7} /* small letter e with macron */,
+ {0x0116, 0xcb} /* capital letter e with dot above */,
+ {0x0117, 0xeb} /* small letter e with dot above */,
+ {0x0118, 0xc6} /* capital letter e with ogonek */,
+ {0x0119, 0xe6} /* small letter e with ogonek */,
+ {0x0122, 0xcc} /* capital letter g with cedilla */,
+ {0x0123, 0xec} /* small letter g with cedilla */,
+ {0x012a, 0xce} /* capital letter i with macron */,
+ {0x012b, 0xee} /* small letter i with macron */,
+ {0x012e, 0xc1} /* capital letter i with ogonek */,
+ {0x012f, 0xe1} /* small letter i with ogonek */,
+ {0x0136, 0xcd} /* capital letter k with cedilla */,
+ {0x0137, 0xed} /* small letter k with cedilla */,
+ {0x013b, 0xcf} /* capital letter l with cedilla */,
+ {0x013c, 0xef} /* small letter l with cedilla */,
+ {0x0141, 0xd9} /* capital letter l with stroke */,
+ {0x0142, 0xf9} /* small letter l with stroke */,
+ {0x0143, 0xd1} /* capital letter n with acute */,
+ {0x0144, 0xf1} /* small letter n with acute */,
+ {0x0145, 0xd2} /* capital letter n with cedilla */,
+ {0x0146, 0xf2} /* small letter n with cedilla */,
+ {0x014c, 0xd4} /* capital letter o with macron */,
+ {0x014d, 0xf4} /* small letter o with macron */,
+ {0x015a, 0xda} /* capital letter s with acute */,
+ {0x015b, 0xfa} /* small letter s with acute */,
+ {0x0160, 0xd0} /* capital letter s with caron */,
+ {0x0161, 0xf0} /* small letter s with caron */,
+ {0x016a, 0xdb} /* capital letter u with macron */,
+ {0x016b, 0xfb} /* small letter u with macron */,
+ {0x0172, 0xd8} /* capital letter u with ogonek */,
+ {0x0173, 0xf8} /* small letter u with ogonek */,
+ {0x0179, 0xca} /* capital letter z with acute */,
+ {0x017a, 0xea} /* small letter z with acute */,
+ {0x017b, 0xdd} /* capital letter z with dot above */,
+ {0x017c, 0xfd} /* small letter z with dot above */,
+ {0x017d, 0xde} /* capital letter z with caron */,
+ {0x017e, 0xfe} /* small letter z with caron */,
+ {0x2019, 0xff} /* single quotation mark */,
+ {0x201c, 0xb4} /* double quotation mark */,
+ {0x201e, 0xa5} /* low-9 quotation mark */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_13_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_13_extra[cet_ucs4_to_iso_8859_13_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_13 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_13, /* name of character set */
+ cet_cs_alias_iso_8859_13, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_13, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_13, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_13, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_13_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_13_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_13_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x201e, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x201c, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+ 0x0104, 0x012e, 0x0100, 0x0106, 0x00c4, 0x00c5, 0x0118, 0x0112,
+ 0x010c, 0x00c9, 0x0179, 0x0116, 0x0122, 0x0136, 0x012a, 0x013b,
+ 0x0160, 0x0143, 0x0145, 0x00d3, 0x014c, 0x00d5, 0x00d6, 0x00d7,
+ 0x0172, 0x0141, 0x015a, 0x016a, 0x00dc, 0x017b, 0x017d, 0x00df,
+ 0x0105, 0x012f, 0x0101, 0x0107, 0x00e4, 0x00e5, 0x0119, 0x0113,
+ 0x010d, 0x00e9, 0x017a, 0x0117, 0x0123, 0x0137, 0x012b, 0x013c,
+ 0x0161, 0x0144, 0x0146, 0x00f3, 0x014d, 0x00f5, 0x00f6, 0x00f7,
+ 0x0173, 0x0142, 0x015b, 0x016b, 0x00fc, 0x017c, 0x017e, 0x2019
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-14" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_14_h
+#define iso_8859_14_h
+
+#define cet_cs_name_iso_8859_14 "ISO-8859-14"
+
+const char *cet_cs_alias_iso_8859_14[] =
+{
+ "ISO-8859-14", "ISO8859-14", "iso-celtic", "iso-ir-199",
+ "ISO_8859-14", "ISO_8859-14:1998", "l8", "latin8",
+ NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_14 161
+#define cet_ucs4_cnt_iso_8859_14 95
+
+const int cet_ucs4_map_iso_8859_14[cet_ucs4_cnt_iso_8859_14] =
+{
+ 0x1e02, 0x1e03, 0x00a3, 0x010a, 0x010b, 0x1e0a, 0x00a7, 0x1e80,
+ 0x00a9, 0x1e82, 0x1e0b, 0x1ef2, 0x00ad, 0x00ae, 0x1e61, 0x1e1e,
+ 0x1e1f, 0x0120, 0x0121, 0x1e40, 0x1e41, 0x00b6, 0x1e56, 0x1e81,
+ 0x1e57, 0x1e83, 0x1e60, 0x1ef3, 0x1e84, 0x1e85, 0x0178, 0x00c0,
+ 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7, 0x00c8,
+ 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf, 0x0174,
+ 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x1e6a, 0x00d8,
+ 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x0176, 0x00df, 0x00e0,
+ 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7, 0x00e8,
+ 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef, 0x0175,
+ 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x1e6b, 0x00f8,
+ 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x0177, 0x00ff
+};
+
+#define cet_ucs4_to_iso_8859_14_ct 31
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_14_links[cet_ucs4_to_iso_8859_14_ct] =
+{
+ {0x010a, 0xa4} /* capital letter c with dot above */,
+ {0x010b, 0xa5} /* small letter c with dot above */,
+ {0x0120, 0xb2} /* capital letter g with dot above */,
+ {0x0121, 0xb3} /* small letter g with dot above */,
+ {0x0174, 0xd0} /* capital letter w with circumflex */,
+ {0x0175, 0xf0} /* small letter w with circumflex */,
+ {0x0176, 0xde} /* capital letter y with circumflex */,
+ {0x0177, 0xfe} /* small letter y with circumflex */,
+ {0x0178, 0xbf} /* capital letter y with diaeresis */,
+ {0x1e02, 0xa1} /* capital letter b with dot above */,
+ {0x1e03, 0xa2} /* small letter b with dot above */,
+ {0x1e0a, 0xa6} /* capital letter d with dot above */,
+ {0x1e0b, 0xab} /* small letter d with dot above */,
+ {0x1e1e, 0xb0} /* capital letter f with dot above */,
+ {0x1e1f, 0xb1} /* small letter f with dot above */,
+ {0x1e40, 0xb4} /* capital letter m with dot above */,
+ {0x1e41, 0xb5} /* small letter m with dot above */,
+ {0x1e56, 0xb7} /* capital letter p with dot above */,
+ {0x1e57, 0xb9} /* small letter p with dot above */,
+ {0x1e60, 0xbb} /* capital letter s with dot above */,
+ {0x1e61, 0xaf} /* small letter s with dot above */,
+ {0x1e6a, 0xd7} /* capital letter t with dot above */,
+ {0x1e6b, 0xf7} /* small letter t with dot above */,
+ {0x1e80, 0xa8} /* capital letter w with grave */,
+ {0x1e81, 0xb8} /* small letter w with grave */,
+ {0x1e82, 0xaa} /* capital letter w with acute */,
+ {0x1e83, 0xba} /* small letter w with acute */,
+ {0x1e84, 0xbd} /* capital letter w with diaeresis */,
+ {0x1e85, 0xbe} /* small letter w with diaeresis */,
+ {0x1ef2, 0xac} /* capital letter y with grave */,
+ {0x1ef3, 0xbc} /* small letter y with grave */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_14_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_14_extra[cet_ucs4_to_iso_8859_14_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_14 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_14, /* name of character set */
+ cet_cs_alias_iso_8859_14, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_14, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_14, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_14, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_14_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_14_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_14_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x1e02, 0x1e03, 0x00a3, 0x010a, 0x010b, 0x1e0a, 0x00a7,
+ 0x1e80, 0x00a9, 0x1e82, 0x1e0b, 0x1ef2, 0x00ad, 0x00ae, 0x1e61,
+ 0x1e1e, 0x1e1f, 0x0120, 0x0121, 0x1e40, 0x1e41, 0x00b6, 0x1e56,
+ 0x1e81, 0x1e57, 0x1e83, 0x1e60, 0x1ef3, 0x1e84, 0x1e85, 0x0178,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x0174, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x1e6a,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x0176, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ 0x0175, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x1e6b,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x0177, 0x00ff
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-15" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_15_h
+#define iso_8859_15_h
+
+#define cet_cs_name_iso_8859_15 "ISO-8859-15"
+
+const char *cet_cs_alias_iso_8859_15[] =
+{
+ "ISO-8859-15", "ISO8859-15", "iso-ir-203", "ISO_8859-15",
+ "ISO_8859-15:1998", "l9", "latin9", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_15 164
+#define cet_ucs4_cnt_iso_8859_15 92
+
+const int cet_ucs4_map_iso_8859_15[cet_ucs4_cnt_iso_8859_15] =
+{
+ 0x20ac, 0x00a5, 0x0160, 0x00a7, 0x0161, 0x00a9, 0x00aa, 0x00ab,
+ 0x00ac, 0x00ad, 0x00ae, 0x00af, 0x00b0, 0x00b1, 0x00b2, 0x00b3,
+ 0x017d, 0x00b5, 0x00b6, 0x00b7, 0x017e, 0x00b9, 0x00ba, 0x00bb,
+ 0x0152, 0x0153, 0x0178, 0x00bf, 0x00c0, 0x00c1, 0x00c2, 0x00c3,
+ 0x00c4, 0x00c5, 0x00c6, 0x00c7, 0x00c8, 0x00c9, 0x00ca, 0x00cb,
+ 0x00cc, 0x00cd, 0x00ce, 0x00cf, 0x00d0, 0x00d1, 0x00d2, 0x00d3,
+ 0x00d4, 0x00d5, 0x00d6, 0x00d7, 0x00d8, 0x00d9, 0x00da, 0x00db,
+ 0x00dc, 0x00dd, 0x00de, 0x00df, 0x00e0, 0x00e1, 0x00e2, 0x00e3,
+ 0x00e4, 0x00e5, 0x00e6, 0x00e7, 0x00e8, 0x00e9, 0x00ea, 0x00eb,
+ 0x00ec, 0x00ed, 0x00ee, 0x00ef, 0x00f0, 0x00f1, 0x00f2, 0x00f3,
+ 0x00f4, 0x00f5, 0x00f6, 0x00f7, 0x00f8, 0x00f9, 0x00fa, 0x00fb,
+ 0x00fc, 0x00fd, 0x00fe, 0x00ff
+};
+
+#define cet_ucs4_to_iso_8859_15_ct 8
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_15_links[cet_ucs4_to_iso_8859_15_ct] =
+{
+ {0x0152, 0xbc} /* capital ligature oe */,
+ {0x0153, 0xbd} /* small ligature oe */,
+ {0x0160, 0xa6} /* capital letter s with caron */,
+ {0x0161, 0xa8} /* small letter s with caron */,
+ {0x0178, 0xbe} /* capital letter y with diaeresis */,
+ {0x017d, 0xb4} /* capital letter z with caron */,
+ {0x017e, 0xb8} /* small letter z with caron */,
+ {0x20ac, 0xa4} /* euro */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_15_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_15_extra[cet_ucs4_to_iso_8859_15_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_15 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_15, /* name of character set */
+ cet_cs_alias_iso_8859_15, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_15, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_15, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_15, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_15_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_15_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_15_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x20ac, 0x00a5, 0x0160, 0x00a7,
+ 0x0161, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x017d, 0x00b5, 0x00b6, 0x00b7,
+ 0x017e, 0x00b9, 0x00ba, 0x00bb, 0x0152, 0x0153, 0x0178, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ 0x00f0, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x00fd, 0x00fe, 0x00ff
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-2" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_2_h
+#define iso_8859_2_h
+
+#define cet_cs_name_iso_8859_2 "ISO-8859-2"
+
+const char *cet_cs_alias_iso_8859_2[] =
+{
+ "ISO-8859-2", "912/CR-LF", "CP912/CR-LF", "csISOLatin2",
+ "IBM912/CR-LF", "ISO8859-2", "iso-ir-101", "ISO_8859-2",
+ "ISO_8859-2:1987", "l2", "latin2", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_2 161
+#define cet_ucs4_cnt_iso_8859_2 95
+
+const int cet_ucs4_map_iso_8859_2[cet_ucs4_cnt_iso_8859_2] =
+{
+ 0x0104, 0x02d8, 0x0141, 0x00a4, 0x013d, 0x015a, 0x00a7, 0x00a8,
+ 0x0160, 0x015e, 0x0164, 0x0179, 0x00ad, 0x017d, 0x017b, 0x00b0,
+ 0x0105, 0x02db, 0x0142, 0x00b4, 0x013e, 0x015b, 0x02c7, 0x00b8,
+ 0x0161, 0x015f, 0x0165, 0x017a, 0x02dd, 0x017e, 0x017c, 0x0154,
+ 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7, 0x010c,
+ 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e, 0x0110,
+ 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7, 0x0158,
+ 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df, 0x0155,
+ 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7, 0x010d,
+ 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f, 0x0111,
+ 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7, 0x0159,
+ 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9
+};
+
+#define cet_ucs4_to_iso_8859_2_ct 57
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_2_links[cet_ucs4_to_iso_8859_2_ct] =
+{
+ {0x0102, 0xc3} /* capital letter a with breve */,
+ {0x0103, 0xe3} /* small letter a with breve */,
+ {0x0104, 0xa1} /* capital letter a with ogonek */,
+ {0x0105, 0xb1} /* small letter a with ogonek */,
+ {0x0106, 0xc6} /* capital letter c with acute */,
+ {0x0107, 0xe6} /* small letter c with acute */,
+ {0x010c, 0xc8} /* capital letter c with caron */,
+ {0x010d, 0xe8} /* small letter c with caron */,
+ {0x010e, 0xcf} /* capital letter d with caron */,
+ {0x010f, 0xef} /* small letter d with caron */,
+ {0x0110, 0xd0} /* capital letter d with stroke */,
+ {0x0111, 0xf0} /* small letter d with stroke */,
+ {0x0118, 0xca} /* capital letter e with ogonek */,
+ {0x0119, 0xea} /* small letter e with ogonek */,
+ {0x011a, 0xcc} /* capital letter e with caron */,
+ {0x011b, 0xec} /* small letter e with caron */,
+ {0x0139, 0xc5} /* capital letter l with acute */,
+ {0x013a, 0xe5} /* small letter l with acute */,
+ {0x013d, 0xa5} /* capital letter l with caron */,
+ {0x013e, 0xb5} /* small letter l with caron */,
+ {0x0141, 0xa3} /* capital letter l with stroke */,
+ {0x0142, 0xb3} /* small letter l with stroke */,
+ {0x0143, 0xd1} /* capital letter n with acute */,
+ {0x0144, 0xf1} /* small letter n with acute */,
+ {0x0147, 0xd2} /* capital letter n with caron */,
+ {0x0148, 0xf2} /* small letter n with caron */,
+ {0x0150, 0xd5} /* capital letter o with double acute */,
+ {0x0151, 0xf5} /* small letter o with double acute */,
+ {0x0154, 0xc0} /* capital letter r with acute */,
+ {0x0155, 0xe0} /* small letter r with acute */,
+ {0x0158, 0xd8} /* capital letter r with caron */,
+ {0x0159, 0xf8} /* small letter r with caron */,
+ {0x015a, 0xa6} /* capital letter s with acute */,
+ {0x015b, 0xb6} /* small letter s with acute */,
+ {0x015e, 0xaa} /* capital letter s with cedilla */,
+ {0x015f, 0xba} /* small letter s with cedilla */,
+ {0x0160, 0xa9} /* capital letter s with caron */,
+ {0x0161, 0xb9} /* small letter s with caron */,
+ {0x0162, 0xde} /* capital letter t with cedilla */,
+ {0x0163, 0xfe} /* small letter t with cedilla */,
+ {0x0164, 0xab} /* capital letter t with caron */,
+ {0x0165, 0xbb} /* small letter t with caron */,
+ {0x016e, 0xd9} /* capital letter u with ring above */,
+ {0x016f, 0xf9} /* small letter u with ring above */,
+ {0x0170, 0xdb} /* capital letter u with double acute */,
+ {0x0171, 0xfb} /* small letter u with double acute */,
+ {0x0179, 0xac} /* capital letter z with acute */,
+ {0x017a, 0xbc} /* small letter z with acute */,
+ {0x017b, 0xaf} /* capital letter z with dot above */,
+ {0x017c, 0xbf} /* small letter z with dot above */,
+ {0x017d, 0xae} /* capital letter z with caron */,
+ {0x017e, 0xbe} /* small letter z with caron */,
+ {0x02c7, 0xb7} /* caron */,
+ {0x02d8, 0xa2} /* breve */,
+ {0x02d9, 0xff} /* above */,
+ {0x02db, 0xb2} /* ogonek */,
+ {0x02dd, 0xbd} /* acute accent */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_2_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_2_extra[cet_ucs4_to_iso_8859_2_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_2 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_2, /* name of character set */
+ cet_cs_alias_iso_8859_2, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_2, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_2, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_2, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_2_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_2_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_2_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x0104, 0x02d8, 0x0141, 0x00a4, 0x013d, 0x015a, 0x00a7,
+ 0x00a8, 0x0160, 0x015e, 0x0164, 0x0179, 0x00ad, 0x017d, 0x017b,
+ 0x00b0, 0x0105, 0x02db, 0x0142, 0x00b4, 0x013e, 0x015b, 0x02c7,
+ 0x00b8, 0x0161, 0x015f, 0x0165, 0x017a, 0x02dd, 0x017e, 0x017c,
+ 0x0154, 0x00c1, 0x00c2, 0x0102, 0x00c4, 0x0139, 0x0106, 0x00c7,
+ 0x010c, 0x00c9, 0x0118, 0x00cb, 0x011a, 0x00cd, 0x00ce, 0x010e,
+ 0x0110, 0x0143, 0x0147, 0x00d3, 0x00d4, 0x0150, 0x00d6, 0x00d7,
+ 0x0158, 0x016e, 0x00da, 0x0170, 0x00dc, 0x00dd, 0x0162, 0x00df,
+ 0x0155, 0x00e1, 0x00e2, 0x0103, 0x00e4, 0x013a, 0x0107, 0x00e7,
+ 0x010d, 0x00e9, 0x0119, 0x00eb, 0x011b, 0x00ed, 0x00ee, 0x010f,
+ 0x0111, 0x0144, 0x0148, 0x00f3, 0x00f4, 0x0151, 0x00f6, 0x00f7,
+ 0x0159, 0x016f, 0x00fa, 0x0171, 0x00fc, 0x00fd, 0x0163, 0x02d9
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-3" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_3_h
+#define iso_8859_3_h
+
+#define cet_cs_name_iso_8859_3 "ISO-8859-3"
+
+const char *cet_cs_alias_iso_8859_3[] =
+{
+ "ISO-8859-3", "csISOLatin3", "ISO8859-3", "iso-ir-109",
+ "ISO_8859-3", "ISO_8859-3:1988", "l3", "latin3",
+ NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_3 161
+#define cet_ucs4_cnt_iso_8859_3 95
+
+const int cet_ucs4_map_iso_8859_3[cet_ucs4_cnt_iso_8859_3] =
+{
+ 0x0126, 0x02d8, 0x00a3, 0x00a4, -1, 0x0124, 0x00a7, 0x00a8,
+ 0x0130, 0x015e, 0x011e, 0x0134, 0x00ad, -1, 0x017b, 0x00b0,
+ 0x0127, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x0125, 0x00b7, 0x00b8,
+ 0x0131, 0x015f, 0x011f, 0x0135, 0x00bd, -1, 0x017c, 0x00c0,
+ 0x00c1, 0x00c2, -1, 0x00c4, 0x010a, 0x0108, 0x00c7, 0x00c8,
+ 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf, -1,
+ 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x0120, 0x00d6, 0x00d7, 0x011c,
+ 0x00d9, 0x00da, 0x00db, 0x00dc, 0x016c, 0x015c, 0x00df, 0x00e0,
+ 0x00e1, 0x00e2, -1, 0x00e4, 0x010b, 0x0109, 0x00e7, 0x00e8,
+ 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef, -1,
+ 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x0121, 0x00f6, 0x00f7, 0x011d,
+ 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x016d, 0x015d, 0x02d9
+};
+
+#define cet_ucs4_to_iso_8859_3_ct 28
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_3_links[cet_ucs4_to_iso_8859_3_ct] =
+{
+ {0x0108, 0xc6} /* capital letter c with circumflex */,
+ {0x0109, 0xe6} /* small letter c with circumflex */,
+ {0x010a, 0xc5} /* capital letter c with dot above */,
+ {0x010b, 0xe5} /* small letter c with dot above */,
+ {0x011c, 0xd8} /* capital letter g with circumflex */,
+ {0x011d, 0xf8} /* small letter g with circumflex */,
+ {0x011e, 0xab} /* capital letter g with breve */,
+ {0x011f, 0xbb} /* small letter g with breve */,
+ {0x0120, 0xd5} /* capital letter g with dot above */,
+ {0x0121, 0xf5} /* small letter g with dot above */,
+ {0x0124, 0xa6} /* capital letter h with circumflex */,
+ {0x0125, 0xb6} /* small letter h with circumflex */,
+ {0x0126, 0xa1} /* capital letter h with stroke */,
+ {0x0127, 0xb1} /* small letter h with stroke */,
+ {0x0130, 0xa9} /* capital letter i with dot above */,
+ {0x0131, 0xb9} /* small letter i dotless */,
+ {0x0134, 0xac} /* capital letter j with circumflex */,
+ {0x0135, 0xbc} /* small letter j with circumflex */,
+ {0x015c, 0xde} /* capital letter s with circumflex */,
+ {0x015d, 0xfe} /* small letter s with circumflex */,
+ {0x015e, 0xaa} /* capital letter s with cedilla */,
+ {0x015f, 0xba} /* small letter s with cedilla */,
+ {0x016c, 0xdd} /* capital letter u with breve */,
+ {0x016d, 0xfd} /* small letter u with breve */,
+ {0x017b, 0xaf} /* capital letter z with dot above */,
+ {0x017c, 0xbf} /* small letter z with dot above */,
+ {0x02d8, 0xa2} /* breve */,
+ {0x02d9, 0xff} /* above */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_3_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_3_extra[cet_ucs4_to_iso_8859_3_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_3 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_3, /* name of character set */
+ cet_cs_alias_iso_8859_3, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_3, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_3, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_3, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_3_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_3_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_3_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x0126, 0x02d8, 0x00a3, 0x00a4, -1, 0x0124, 0x00a7,
+ 0x00a8, 0x0130, 0x015e, 0x011e, 0x0134, 0x00ad, -1, 0x017b,
+ 0x00b0, 0x0127, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x0125, 0x00b7,
+ 0x00b8, 0x0131, 0x015f, 0x011f, 0x0135, 0x00bd, -1, 0x017c,
+ 0x00c0, 0x00c1, 0x00c2, -1, 0x00c4, 0x010a, 0x0108, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ -1, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x0120, 0x00d6, 0x00d7,
+ 0x011c, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x016c, 0x015c, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, -1, 0x00e4, 0x010b, 0x0109, 0x00e7,
+ 0x00e8, 0x00e9, 0x00ea, 0x00eb, 0x00ec, 0x00ed, 0x00ee, 0x00ef,
+ -1, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x0121, 0x00f6, 0x00f7,
+ 0x011d, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x016d, 0x015d, 0x02d9
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-4" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_4_h
+#define iso_8859_4_h
+
+#define cet_cs_name_iso_8859_4 "ISO-8859-4"
+
+const char *cet_cs_alias_iso_8859_4[] =
+{
+ "ISO-8859-4", "csISOLatin4", "ISO8859-4", "iso-ir-110",
+ "ISO_8859-4", "ISO_8859-4:1988", "l4", "latin4",
+ NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_4 161
+#define cet_ucs4_cnt_iso_8859_4 95
+
+const int cet_ucs4_map_iso_8859_4[cet_ucs4_cnt_iso_8859_4] =
+{
+ 0x0104, 0x0138, 0x0156, 0x00a4, 0x0128, 0x013b, 0x00a7, 0x00a8,
+ 0x0160, 0x0112, 0x0122, 0x0166, 0x00ad, 0x017d, 0x00af, 0x00b0,
+ 0x0105, 0x02db, 0x0157, 0x00b4, 0x0129, 0x013c, 0x02c7, 0x00b8,
+ 0x0161, 0x0113, 0x0123, 0x0167, 0x014a, 0x017e, 0x014b, 0x0100,
+ 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x012e, 0x010c,
+ 0x00c9, 0x0118, 0x00cb, 0x0116, 0x00cd, 0x00ce, 0x012a, 0x0110,
+ 0x0145, 0x014c, 0x0136, 0x00d4, 0x00d5, 0x00d6, 0x00d7, 0x00d8,
+ 0x0172, 0x00da, 0x00db, 0x00dc, 0x0168, 0x016a, 0x00df, 0x0101,
+ 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x012f, 0x010d,
+ 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x012b, 0x0111,
+ 0x0146, 0x014d, 0x0137, 0x00f4, 0x00f5, 0x00f6, 0x00f7, 0x00f8,
+ 0x0173, 0x00fa, 0x00fb, 0x00fc, 0x0169, 0x016b, 0x02d9
+};
+
+#define cet_ucs4_to_iso_8859_4_ct 50
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_4_links[cet_ucs4_to_iso_8859_4_ct] =
+{
+ {0x0100, 0xc0} /* capital letter a with macron */,
+ {0x0101, 0xe0} /* small letter a with macron */,
+ {0x0104, 0xa1} /* capital letter a with ogonek */,
+ {0x0105, 0xb1} /* small letter a with ogonek */,
+ {0x010c, 0xc8} /* capital letter c with caron */,
+ {0x010d, 0xe8} /* small letter c with caron */,
+ {0x0110, 0xd0} /* capital letter d with stroke */,
+ {0x0111, 0xf0} /* small letter d with stroke */,
+ {0x0112, 0xaa} /* capital letter e with macron */,
+ {0x0113, 0xba} /* small letter e with macron */,
+ {0x0116, 0xcc} /* capital letter e with dot above */,
+ {0x0117, 0xec} /* small letter e with dot above */,
+ {0x0118, 0xca} /* capital letter e with ogonek */,
+ {0x0119, 0xea} /* small letter e with ogonek */,
+ {0x0122, 0xab} /* capital letter g with cedilla */,
+ {0x0123, 0xbb} /* small letter g with cedilla */,
+ {0x0128, 0xa5} /* capital letter i with tilde */,
+ {0x0129, 0xb5} /* small letter i with tilde */,
+ {0x012a, 0xcf} /* capital letter i with macron */,
+ {0x012b, 0xef} /* small letter i with macron */,
+ {0x012e, 0xc7} /* capital letter i with ogonek */,
+ {0x012f, 0xe7} /* small letter i with ogonek */,
+ {0x0136, 0xd3} /* capital letter k with cedilla */,
+ {0x0137, 0xf3} /* small letter k with cedilla */,
+ {0x0138, 0xa2} /* small letter kra (greenlandic) */,
+ {0x013b, 0xa6} /* capital letter l with cedilla */,
+ {0x013c, 0xb6} /* small letter l with cedilla */,
+ {0x0145, 0xd1} /* capital letter n with cedilla */,
+ {0x0146, 0xf1} /* small letter n with cedilla */,
+ {0x014a, 0xbd} /* capital letter eng (lappish) */,
+ {0x014b, 0xbf} /* small letter eng (lappish) */,
+ {0x014c, 0xd2} /* capital letter o with macron */,
+ {0x014d, 0xf2} /* small letter o with macron */,
+ {0x0156, 0xa3} /* capital letter r with cedilla */,
+ {0x0157, 0xb3} /* small letter r with cedilla */,
+ {0x0160, 0xa9} /* capital letter s with caron */,
+ {0x0161, 0xb9} /* small letter s with caron */,
+ {0x0166, 0xac} /* capital letter t with stroke */,
+ {0x0167, 0xbc} /* small letter t with stroke */,
+ {0x0168, 0xdd} /* capital letter u with tilde */,
+ {0x0169, 0xfd} /* small letter u with tilde */,
+ {0x016a, 0xde} /* capital letter u with macron */,
+ {0x016b, 0xfe} /* small letter u with macron */,
+ {0x0172, 0xd9} /* capital letter u with ogonek */,
+ {0x0173, 0xf9} /* small letter u with ogonek */,
+ {0x017d, 0xae} /* capital letter z with caron */,
+ {0x017e, 0xbe} /* small letter z with caron */,
+ {0x02c7, 0xb7} /* caron */,
+ {0x02d9, 0xff} /* above */,
+ {0x02db, 0xb2} /* ogonek */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_4_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_4_extra[cet_ucs4_to_iso_8859_4_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_4 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_4, /* name of character set */
+ cet_cs_alias_iso_8859_4, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_4, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_4, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_4, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_4_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_4_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_4_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x0104, 0x0138, 0x0156, 0x00a4, 0x0128, 0x013b, 0x00a7,
+ 0x00a8, 0x0160, 0x0112, 0x0122, 0x0166, 0x00ad, 0x017d, 0x00af,
+ 0x00b0, 0x0105, 0x02db, 0x0157, 0x00b4, 0x0129, 0x013c, 0x02c7,
+ 0x00b8, 0x0161, 0x0113, 0x0123, 0x0167, 0x014a, 0x017e, 0x014b,
+ 0x0100, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x012e,
+ 0x010c, 0x00c9, 0x0118, 0x00cb, 0x0116, 0x00cd, 0x00ce, 0x012a,
+ 0x0110, 0x0145, 0x014c, 0x0136, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x0172, 0x00da, 0x00db, 0x00dc, 0x0168, 0x016a, 0x00df,
+ 0x0101, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x012f,
+ 0x010d, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x012b,
+ 0x0111, 0x0146, 0x014d, 0x0137, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x0173, 0x00fa, 0x00fb, 0x00fc, 0x0169, 0x016b, 0x02d9
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-5" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_5_h
+#define iso_8859_5_h
+
+#define cet_cs_name_iso_8859_5 "ISO-8859-5"
+
+const char *cet_cs_alias_iso_8859_5[] =
+{
+ "ISO-8859-5", "csISOLatinCyrillic", "cyrillic", "ISO8859-5",
+ "iso-ir-144", "ISO_8859-5", "ISO_8859-5:1988", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_5 161
+#define cet_ucs4_cnt_iso_8859_5 95
+
+const int cet_ucs4_map_iso_8859_5[cet_ucs4_cnt_iso_8859_5] =
+{
+ 0x0401, 0x0402, 0x0403, 0x0404, 0x0405, 0x0406, 0x0407, 0x0408,
+ 0x0409, 0x040a, 0x040b, 0x040c, 0x00ad, 0x040e, 0x040f, 0x0410,
+ 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417, 0x0418,
+ 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 0x0420,
+ 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, 0x0428,
+ 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f, 0x0430,
+ 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437, 0x0438,
+ 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f, 0x0440,
+ 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447, 0x0448,
+ 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f, 0x2116,
+ 0x0451, 0x0452, 0x0453, 0x0454, 0x0455, 0x0456, 0x0457, 0x0458,
+ 0x0459, 0x045a, 0x045b, 0x045c, 0x00a7, 0x045e, 0x045f
+};
+
+#define cet_ucs4_to_iso_8859_5_ct 94
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_5_links[cet_ucs4_to_iso_8859_5_ct] =
+{
+ {0x00a7, 0xfd} /* sign */,
+ {0x0401, 0xa1} /* capital letter io */,
+ {0x0402, 0xa2} /* capital letter dje (serbocroatian) */,
+ {0x0403, 0xa3} /* capital letter gje (macedonian) */,
+ {0x0404, 0xa4} /* capital letter ukrainian ie */,
+ {0x0405, 0xa5} /* capital letter dze (macedonian) */,
+ {0x0406, 0xa6} /* capital letter byelorussian-ukrainian i */,
+ {0x0407, 0xa7} /* capital letter yi (ukrainian) */,
+ {0x0408, 0xa8} /* capital letter je */,
+ {0x0409, 0xa9} /* capital letter lje */,
+ {0x040a, 0xaa} /* capital letter nje */,
+ {0x040b, 0xab} /* capital letter tshe (serbocroatian) */,
+ {0x040c, 0xac} /* capital letter kje (macedonian) */,
+ {0x040e, 0xae} /* capital letter short u (byelorussian) */,
+ {0x040f, 0xaf} /* capital letter dzhe */,
+ {0x0410, 0xb0} /* capital letter a */,
+ {0x0411, 0xb1} /* capital letter be */,
+ {0x0412, 0xb2} /* capital letter ve */,
+ {0x0413, 0xb3} /* capital letter ghe */,
+ {0x0414, 0xb4} /* capital letter de */,
+ {0x0415, 0xb5} /* capital letter ie */,
+ {0x0416, 0xb6} /* capital letter zhe */,
+ {0x0417, 0xb7} /* capital letter ze */,
+ {0x0418, 0xb8} /* capital letter i */,
+ {0x0419, 0xb9} /* capital letter short i */,
+ {0x041a, 0xba} /* capital letter ka */,
+ {0x041b, 0xbb} /* capital letter el */,
+ {0x041c, 0xbc} /* capital letter em */,
+ {0x041d, 0xbd} /* capital letter en */,
+ {0x041e, 0xbe} /* capital letter o */,
+ {0x041f, 0xbf} /* capital letter pe */,
+ {0x0420, 0xc0} /* capital letter er */,
+ {0x0421, 0xc1} /* capital letter es */,
+ {0x0422, 0xc2} /* capital letter te */,
+ {0x0423, 0xc3} /* capital letter u */,
+ {0x0424, 0xc4} /* capital letter ef */,
+ {0x0425, 0xc5} /* capital letter ha */,
+ {0x0426, 0xc6} /* capital letter tse */,
+ {0x0427, 0xc7} /* capital letter che */,
+ {0x0428, 0xc8} /* capital letter sha */,
+ {0x0429, 0xc9} /* capital letter shcha */,
+ {0x042a, 0xca} /* capital letter hard sign */,
+ {0x042b, 0xcb} /* capital letter yeru */,
+ {0x042c, 0xcc} /* capital letter soft sign */,
+ {0x042d, 0xcd} /* capital letter e */,
+ {0x042e, 0xce} /* capital letter yu */,
+ {0x042f, 0xcf} /* capital letter ya */,
+ {0x0430, 0xd0} /* small letter a */,
+ {0x0431, 0xd1} /* small letter be */,
+ {0x0432, 0xd2} /* small letter ve */,
+ {0x0433, 0xd3} /* small letter ghe */,
+ {0x0434, 0xd4} /* small letter de */,
+ {0x0435, 0xd5} /* small letter ie */,
+ {0x0436, 0xd6} /* small letter zhe */,
+ {0x0437, 0xd7} /* small letter ze */,
+ {0x0438, 0xd8} /* small letter i */,
+ {0x0439, 0xd9} /* small letter short i */,
+ {0x043a, 0xda} /* small letter ka */,
+ {0x043b, 0xdb} /* small letter el */,
+ {0x043c, 0xdc} /* small letter em */,
+ {0x043d, 0xdd} /* small letter en */,
+ {0x043e, 0xde} /* small letter o */,
+ {0x043f, 0xdf} /* small letter pe */,
+ {0x0440, 0xe0} /* small letter er */,
+ {0x0441, 0xe1} /* small letter es */,
+ {0x0442, 0xe2} /* small letter te */,
+ {0x0443, 0xe3} /* small letter u */,
+ {0x0444, 0xe4} /* small letter ef */,
+ {0x0445, 0xe5} /* small letter ha */,
+ {0x0446, 0xe6} /* small letter tse */,
+ {0x0447, 0xe7} /* small letter che */,
+ {0x0448, 0xe8} /* small letter sha */,
+ {0x0449, 0xe9} /* small letter shcha */,
+ {0x044a, 0xea} /* small letter hard sign */,
+ {0x044b, 0xeb} /* small letter yeru */,
+ {0x044c, 0xec} /* small letter soft sign */,
+ {0x044d, 0xed} /* small letter e */,
+ {0x044e, 0xee} /* small letter yu */,
+ {0x044f, 0xef} /* small letter ya */,
+ {0x0451, 0xf1} /* small letter io */,
+ {0x0452, 0xf2} /* small letter dje (serbocroatian) */,
+ {0x0453, 0xf3} /* small letter gje (macedonian) */,
+ {0x0454, 0xf4} /* small letter ukrainian ie */,
+ {0x0455, 0xf5} /* small letter dze (macedonian) */,
+ {0x0456, 0xf6} /* small letter byelorussian-ukrainian i */,
+ {0x0457, 0xf7} /* small letter yi (ukrainian) */,
+ {0x0458, 0xf8} /* small letter je */,
+ {0x0459, 0xf9} /* small letter lje */,
+ {0x045a, 0xfa} /* small letter nje */,
+ {0x045b, 0xfb} /* small letter tshe (serbocroatian) */,
+ {0x045c, 0xfc} /* small letter kje (macedonian) */,
+ {0x045e, 0xfe} /* small letter short u (byelorussian) */,
+ {0x045f, 0xff} /* small letter dzhe */,
+ {0x2116, 0xf0} /* sign */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_5_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_5_extra[cet_ucs4_to_iso_8859_5_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_5 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_5, /* name of character set */
+ cet_cs_alias_iso_8859_5, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_5, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_5, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_5, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_5_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_5_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_5_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x0401, 0x0402, 0x0403, 0x0404, 0x0405, 0x0406, 0x0407,
+ 0x0408, 0x0409, 0x040a, 0x040b, 0x040c, 0x00ad, 0x040e, 0x040f,
+ 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, 0x0416, 0x0417,
+ 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e, 0x041f,
+ 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427,
+ 0x0428, 0x0429, 0x042a, 0x042b, 0x042c, 0x042d, 0x042e, 0x042f,
+ 0x0430, 0x0431, 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437,
+ 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e, 0x043f,
+ 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, 0x0446, 0x0447,
+ 0x0448, 0x0449, 0x044a, 0x044b, 0x044c, 0x044d, 0x044e, 0x044f,
+ 0x2116, 0x0451, 0x0452, 0x0453, 0x0454, 0x0455, 0x0456, 0x0457,
+ 0x0458, 0x0459, 0x045a, 0x045b, 0x045c, 0x00a7, 0x045e, 0x045f
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-6" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_6_h
+#define iso_8859_6_h
+
+#define cet_cs_name_iso_8859_6 "ISO-8859-6"
+
+const char *cet_cs_alias_iso_8859_6[] =
+{
+ "ISO-8859-6", "arabic", "ASMO-708", "csISOLatinArabic",
+ "ECMA-114", "ISO8859-6", "iso-ir-127", "ISO_8859-6",
+ "ISO_8859-6:1987", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_6 161
+#define cet_ucs4_cnt_iso_8859_6 82
+
+const int cet_ucs4_map_iso_8859_6[cet_ucs4_cnt_iso_8859_6] =
+{
+ -1, -1, -1, 0x00a4, -1, -1, -1, -1,
+ -1, -1, -1, 0x060c, 0x00ad, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 0x061b, -1, -1, -1, 0x061f, -1,
+ 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627, 0x0628,
+ 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f, 0x0630,
+ 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637, 0x0638,
+ 0x0639, 0x063a, -1, -1, -1, -1, -1, 0x0640,
+ 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647, 0x0648,
+ 0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f, 0x0650,
+ 0x0651, 0x0652
+};
+
+#define cet_ucs4_to_iso_8859_6_ct 48
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_6_links[cet_ucs4_to_iso_8859_6_ct] =
+{
+ {0x060c, 0xac} /* comma */,
+ {0x061b, 0xbb} /* semicolon */,
+ {0x061f, 0xbf} /* question mark */,
+ {0x0621, 0xc1} /* letter hamza */,
+ {0x0622, 0xc2} /* letter alef with madda above */,
+ {0x0623, 0xc3} /* letter alef with hamza above */,
+ {0x0624, 0xc4} /* letter waw with hamza above */,
+ {0x0625, 0xc5} /* letter alef with hamza below */,
+ {0x0626, 0xc6} /* letter yeh with hamza above */,
+ {0x0627, 0xc7} /* letter alef */,
+ {0x0628, 0xc8} /* letter beh */,
+ {0x0629, 0xc9} /* letter teh marbuta */,
+ {0x062a, 0xca} /* letter teh */,
+ {0x062b, 0xcb} /* letter theh */,
+ {0x062c, 0xcc} /* letter jeem */,
+ {0x062d, 0xcd} /* letter hah */,
+ {0x062e, 0xce} /* letter khah */,
+ {0x062f, 0xcf} /* letter dal */,
+ {0x0630, 0xd0} /* letter thal */,
+ {0x0631, 0xd1} /* letter reh */,
+ {0x0632, 0xd2} /* letter zain */,
+ {0x0633, 0xd3} /* letter seen */,
+ {0x0634, 0xd4} /* letter sheen */,
+ {0x0635, 0xd5} /* letter sad */,
+ {0x0636, 0xd6} /* letter dad */,
+ {0x0637, 0xd7} /* letter tah */,
+ {0x0638, 0xd8} /* letter zah */,
+ {0x0639, 0xd9} /* letter ain */,
+ {0x063a, 0xda} /* letter ghain */,
+ {0x0640, 0xe0} /* tatweel */,
+ {0x0641, 0xe1} /* letter feh */,
+ {0x0642, 0xe2} /* letter qaf */,
+ {0x0643, 0xe3} /* letter kaf */,
+ {0x0644, 0xe4} /* letter lam */,
+ {0x0645, 0xe5} /* letter meem */,
+ {0x0646, 0xe6} /* letter noon */,
+ {0x0647, 0xe7} /* letter heh */,
+ {0x0648, 0xe8} /* letter waw */,
+ {0x0649, 0xe9} /* letter alef maksura */,
+ {0x064a, 0xea} /* letter yeh */,
+ {0x064b, 0xeb} /* fathatan */,
+ {0x064c, 0xec} /* dammatan */,
+ {0x064d, 0xed} /* kasratan */,
+ {0x064e, 0xee} /* fatha */,
+ {0x064f, 0xef} /* damma */,
+ {0x0650, 0xf0} /* kasra */,
+ {0x0651, 0xf1} /* shadda */,
+ {0x0652, 0xf2} /* sukun */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_6_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_6_extra[cet_ucs4_to_iso_8859_6_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_6 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_6, /* name of character set */
+ cet_cs_alias_iso_8859_6, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_6, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_6, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_6, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_6_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_6_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_6_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, -1, -1, -1, 0x00a4, -1, -1, -1,
+ -1, -1, -1, -1, 0x060c, 0x00ad, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, 0x061b, -1, -1, -1, 0x061f,
+ -1, 0x0621, 0x0622, 0x0623, 0x0624, 0x0625, 0x0626, 0x0627,
+ 0x0628, 0x0629, 0x062a, 0x062b, 0x062c, 0x062d, 0x062e, 0x062f,
+ 0x0630, 0x0631, 0x0632, 0x0633, 0x0634, 0x0635, 0x0636, 0x0637,
+ 0x0638, 0x0639, 0x063a, -1, -1, -1, -1, -1,
+ 0x0640, 0x0641, 0x0642, 0x0643, 0x0644, 0x0645, 0x0646, 0x0647,
+ 0x0648, 0x0649, 0x064a, 0x064b, 0x064c, 0x064d, 0x064e, 0x064f,
+ 0x0650, 0x0651, 0x0652, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-7" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_7_h
+#define iso_8859_7_h
+
+#define cet_cs_name_iso_8859_7 "ISO-8859-7"
+
+const char *cet_cs_alias_iso_8859_7[] =
+{
+ "ISO-8859-7", "csISOLatinGreek", "ECMA-118", "ELOT_928",
+ "greek", "greek8", "ISO8859-7", "iso-ir-126",
+ "ISO_8859-7", "ISO_8859-7:1987", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_7 161
+#define cet_ucs4_cnt_iso_8859_7 94
+
+const int cet_ucs4_map_iso_8859_7[cet_ucs4_cnt_iso_8859_7] =
+{
+ 0x201b, 0x2019, 0x00a3, -1, -1, 0x00a6, 0x00a7, 0x00a8,
+ 0x00a9, -1, 0x00ab, 0x00ac, 0x00ad, -1, 0x2014, 0x00b0,
+ 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x0385, 0x0386, 0x00b7, 0x0388,
+ 0x0389, 0x038a, 0x00bb, 0x038c, 0x00bd, 0x038e, 0x038f, 0x0390,
+ 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397, 0x0398,
+ 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f, 0x03a0,
+ 0x03a1, -1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7, 0x03a8,
+ 0x03a9, 0x03aa, 0x03ab, 0x03ac, 0x03ad, 0x03ae, 0x03af, 0x03b0,
+ 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7, 0x03b8,
+ 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf, 0x03c0,
+ 0x03c1, 0x03c2, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7, 0x03c8,
+ 0x03c9, 0x03ca, 0x03cb, 0x03cc, 0x03cd, 0x03ce
+};
+
+#define cet_ucs4_to_iso_8859_7_ct 73
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_7_links[cet_ucs4_to_iso_8859_7_ct] =
+{
+ {0x0385, 0xb5} /* accent and diaeresis (tonos and dialytika) */,
+ {0x0386, 0xb6} /* capital letter alpha with acute */,
+ {0x0388, 0xb8} /* capital letter epsilon with acute */,
+ {0x0389, 0xb9} /* capital letter eta with acute */,
+ {0x038a, 0xba} /* capital letter iota with acute */,
+ {0x038c, 0xbc} /* capital letter omicron with acute */,
+ {0x038e, 0xbe} /* capital letter upsilon with acute */,
+ {0x038f, 0xbf} /* capital letter omega with acute */,
+ {0x0390, 0xc0} /* small letter iota with acute and diaeresis */,
+ {0x0391, 0xc1} /* capital letter alpha */,
+ {0x0392, 0xc2} /* capital letter beta */,
+ {0x0393, 0xc3} /* capital letter gamma */,
+ {0x0394, 0xc4} /* capital letter delta */,
+ {0x0395, 0xc5} /* capital letter epsilon */,
+ {0x0396, 0xc6} /* capital letter zeta */,
+ {0x0397, 0xc7} /* capital letter eta */,
+ {0x0398, 0xc8} /* capital letter theta */,
+ {0x0399, 0xc9} /* capital letter iota */,
+ {0x039a, 0xca} /* capital letter kappa */,
+ {0x039b, 0xcb} /* capital letter lamda */,
+ {0x039c, 0xcc} /* capital letter mu */,
+ {0x039d, 0xcd} /* capital letter nu */,
+ {0x039e, 0xce} /* capital letter xi */,
+ {0x039f, 0xcf} /* capital letter omicron */,
+ {0x03a0, 0xd0} /* capital letter pi */,
+ {0x03a1, 0xd1} /* capital letter rho */,
+ {0x03a3, 0xd3} /* capital letter sigma */,
+ {0x03a4, 0xd4} /* capital letter tau */,
+ {0x03a5, 0xd5} /* capital letter upsilon */,
+ {0x03a6, 0xd6} /* capital letter phi */,
+ {0x03a7, 0xd7} /* capital letter chi */,
+ {0x03a8, 0xd8} /* capital letter psi */,
+ {0x03a9, 0xd9} /* capital letter omega */,
+ {0x03aa, 0xda} /* capital letter iota with diaeresis */,
+ {0x03ab, 0xdb} /* capital letter upsilon with diaeresis */,
+ {0x03ac, 0xdc} /* small letter alpha with acute */,
+ {0x03ad, 0xdd} /* small letter epsilon with acute */,
+ {0x03ae, 0xde} /* small letter eta with acute */,
+ {0x03af, 0xdf} /* small letter iota with acute */,
+ {0x03b0, 0xe0} /* small letter upsilon with acute and diaeresis */,
+ {0x03b1, 0xe1} /* small letter alpha */,
+ {0x03b2, 0xe2} /* small letter beta */,
+ {0x03b3, 0xe3} /* small letter gamma */,
+ {0x03b4, 0xe4} /* small letter delta */,
+ {0x03b5, 0xe5} /* small letter epsilon */,
+ {0x03b6, 0xe6} /* small letter zeta */,
+ {0x03b7, 0xe7} /* small letter eta */,
+ {0x03b8, 0xe8} /* small letter theta */,
+ {0x03b9, 0xe9} /* small letter iota */,
+ {0x03ba, 0xea} /* small letter kappa */,
+ {0x03bb, 0xeb} /* small letter lamda */,
+ {0x03bc, 0xec} /* small letter mu */,
+ {0x03bd, 0xed} /* small letter nu */,
+ {0x03be, 0xee} /* small letter xi */,
+ {0x03bf, 0xef} /* small letter omicron */,
+ {0x03c0, 0xf0} /* small letter pi */,
+ {0x03c1, 0xf1} /* small letter rho */,
+ {0x03c2, 0xf2} /* small letter final sigma */,
+ {0x03c3, 0xf3} /* small letter sigma */,
+ {0x03c4, 0xf4} /* small letter tau */,
+ {0x03c5, 0xf5} /* small letter upsilon */,
+ {0x03c6, 0xf6} /* small letter phi */,
+ {0x03c7, 0xf7} /* small letter chi */,
+ {0x03c8, 0xf8} /* small letter psi */,
+ {0x03c9, 0xf9} /* small letter omega */,
+ {0x03ca, 0xfa} /* small letter iota with diaeresis */,
+ {0x03cb, 0xfb} /* small letter upsilon with diaeresis */,
+ {0x03cc, 0xfc} /* small letter omicron with acute */,
+ {0x03cd, 0xfd} /* small letter upsilon with acute */,
+ {0x03ce, 0xfe} /* small letter omega with acute */,
+ {0x2014, 0xaf} /* dash */,
+ {0x2019, 0xa2} /* single quotation mark */,
+ {0x201b, 0xa1} /* high-reversed-9 quotation mark */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_7_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_7_extra[cet_ucs4_to_iso_8859_7_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_7 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_7, /* name of character set */
+ cet_cs_alias_iso_8859_7, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_7, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_7, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_7, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_7_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_7_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_7_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x201b, 0x2019, 0x00a3, -1, -1, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, -1, 0x00ab, 0x00ac, 0x00ad, -1, 0x2014,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x0385, 0x0386, 0x00b7,
+ 0x0388, 0x0389, 0x038a, 0x00bb, 0x038c, 0x00bd, 0x038e, 0x038f,
+ 0x0390, 0x0391, 0x0392, 0x0393, 0x0394, 0x0395, 0x0396, 0x0397,
+ 0x0398, 0x0399, 0x039a, 0x039b, 0x039c, 0x039d, 0x039e, 0x039f,
+ 0x03a0, 0x03a1, -1, 0x03a3, 0x03a4, 0x03a5, 0x03a6, 0x03a7,
+ 0x03a8, 0x03a9, 0x03aa, 0x03ab, 0x03ac, 0x03ad, 0x03ae, 0x03af,
+ 0x03b0, 0x03b1, 0x03b2, 0x03b3, 0x03b4, 0x03b5, 0x03b6, 0x03b7,
+ 0x03b8, 0x03b9, 0x03ba, 0x03bb, 0x03bc, 0x03bd, 0x03be, 0x03bf,
+ 0x03c0, 0x03c1, 0x03c2, 0x03c3, 0x03c4, 0x03c5, 0x03c6, 0x03c7,
+ 0x03c8, 0x03c9, 0x03ca, 0x03cb, 0x03cc, 0x03cd, 0x03ce, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-8" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_8_h
+#define iso_8859_8_h
+
+#define cet_cs_name_iso_8859_8 "ISO-8859-8"
+
+const char *cet_cs_alias_iso_8859_8[] =
+{
+ "ISO-8859-8", "csISOLatinHebrew", "hebrew", "ISO8859-8",
+ "iso-ir-138", "ISO_8859-8", "ISO_8859-8:1988", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_8 161
+#define cet_ucs4_cnt_iso_8859_8 90
+
+const int cet_ucs4_map_iso_8859_8[cet_ucs4_cnt_iso_8859_8] =
+{
+ -1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7, 0x00a8,
+ 0x00a9, 0x00d7, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x203e, 0x00b0,
+ 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7, 0x00b8,
+ 0x00b9, 0x00f7, 0x00bb, 0x00bc, 0x00bd, 0x00be, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, 0x2017, 0x05d0,
+ 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7, 0x05d8,
+ 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df, 0x05e0,
+ 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7, 0x05e8,
+ 0x05e9, 0x05ea
+};
+
+#define cet_ucs4_to_iso_8859_8_ct 31
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_8_links[cet_ucs4_to_iso_8859_8_ct] =
+{
+ {0x00d7, 0xaa} /* sign */,
+ {0x00f7, 0xba} /* sign */,
+ {0x05d0, 0xe0} /* letter alef */,
+ {0x05d1, 0xe1} /* letter bet */,
+ {0x05d2, 0xe2} /* letter gimel */,
+ {0x05d3, 0xe3} /* letter dalet */,
+ {0x05d4, 0xe4} /* letter he */,
+ {0x05d5, 0xe5} /* letter vav */,
+ {0x05d6, 0xe6} /* letter zayin */,
+ {0x05d7, 0xe7} /* letter het */,
+ {0x05d8, 0xe8} /* letter tet */,
+ {0x05d9, 0xe9} /* letter yod */,
+ {0x05da, 0xea} /* letter final kaf */,
+ {0x05db, 0xeb} /* letter kaf */,
+ {0x05dc, 0xec} /* letter lamed */,
+ {0x05dd, 0xed} /* letter final mem */,
+ {0x05de, 0xee} /* letter mem */,
+ {0x05df, 0xef} /* letter final nun */,
+ {0x05e0, 0xf0} /* letter nun */,
+ {0x05e1, 0xf1} /* letter samekh */,
+ {0x05e2, 0xf2} /* letter ayin */,
+ {0x05e3, 0xf3} /* letter final pe */,
+ {0x05e4, 0xf4} /* letter pe */,
+ {0x05e5, 0xf5} /* letter final tsadi */,
+ {0x05e6, 0xf6} /* letter tsadi */,
+ {0x05e7, 0xf7} /* letter qof */,
+ {0x05e8, 0xf8} /* letter resh */,
+ {0x05e9, 0xf9} /* letter shin */,
+ {0x05ea, 0xfa} /* letter tav */,
+ {0x2017, 0xdf} /* low line */,
+ {0x203e, 0xaf} /* overline */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_8_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_8_extra[cet_ucs4_to_iso_8859_8_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_8 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_8, /* name of character set */
+ cet_cs_alias_iso_8859_8, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_8, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_8, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_8, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_8_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_8_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_8_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, -1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00d7, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x203e,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00f7, 0x00bb, 0x00bc, 0x00bd, 0x00be, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, 0x2017,
+ 0x05d0, 0x05d1, 0x05d2, 0x05d3, 0x05d4, 0x05d5, 0x05d6, 0x05d7,
+ 0x05d8, 0x05d9, 0x05da, 0x05db, 0x05dc, 0x05dd, 0x05de, 0x05df,
+ 0x05e0, 0x05e1, 0x05e2, 0x05e3, 0x05e4, 0x05e5, 0x05e6, 0x05e7,
+ 0x05e8, 0x05e9, 0x05ea, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO-8859-9" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_9_h
+#define iso_8859_9_h
+
+#define cet_cs_name_iso_8859_9 "ISO-8859-9"
+
+const char *cet_cs_alias_iso_8859_9[] =
+{
+ "ISO-8859-9", "csISOLatin5", "ISO8859-9", "iso-ir-148",
+ "ISO_8859-9", "ISO_8859-9:1989", "l5", "latin5",
+ NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_9 208
+#define cet_ucs4_cnt_iso_8859_9 48
+
+const int cet_ucs4_map_iso_8859_9[cet_ucs4_cnt_iso_8859_9] =
+{
+ 0x011e, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0130, 0x015e, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x012b,
+ 0x011f, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x0131, 0x015f, 0x00ff
+};
+
+#define cet_ucs4_to_iso_8859_9_ct 9
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_9_links[cet_ucs4_to_iso_8859_9_ct] =
+{
+ {0x0117, 0xec} /* small letter e with dot above */,
+ {0x0119, 0xea} /* small letter e with ogonek */,
+ {0x011e, 0xd0} /* capital letter g with breve */,
+ {0x011f, 0xf0} /* small letter g with breve */,
+ {0x012b, 0xef} /* small letter i with macron */,
+ {0x0130, 0xdd} /* capital letter i with dot above */,
+ {0x0131, 0xfd} /* small letter i dotless */,
+ {0x015e, 0xde} /* capital letter s with cedilla */,
+ {0x015f, 0xfe} /* small letter s with cedilla */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_9_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_9_extra[cet_ucs4_to_iso_8859_9_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_9 = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_9, /* name of character set */
+ cet_cs_alias_iso_8859_9, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_9, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_9, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_9, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_9_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_9_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_9_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, 0x00a1, 0x00a2, 0x00a3, 0x00a4, 0x00a5, 0x00a6, 0x00a7,
+ 0x00a8, 0x00a9, 0x00aa, 0x00ab, 0x00ac, 0x00ad, 0x00ae, 0x00af,
+ 0x00b0, 0x00b1, 0x00b2, 0x00b3, 0x00b4, 0x00b5, 0x00b6, 0x00b7,
+ 0x00b8, 0x00b9, 0x00ba, 0x00bb, 0x00bc, 0x00bd, 0x00be, 0x00bf,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c6, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x011e, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d7,
+ 0x00d8, 0x00d9, 0x00da, 0x00db, 0x00dc, 0x0130, 0x015e, 0x00df,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x00e4, 0x00e5, 0x00e6, 0x00e7,
+ 0x00e8, 0x00e9, 0x0119, 0x00eb, 0x0117, 0x00ed, 0x00ee, 0x012b,
+ 0x011f, 0x00f1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x00f6, 0x00f7,
+ 0x00f8, 0x00f9, 0x00fa, 0x00fb, 0x00fc, 0x0131, 0x015f, 0x00ff
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "ISO_8859-supp" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef iso_8859_supp_h
+#define iso_8859_supp_h
+
+#define cet_cs_name_iso_8859_supp "ISO_8859-supp"
+
+const char *cet_cs_alias_iso_8859_supp[] =
+{
+ "ISO_8859-supp", "iso-ir-154", "latin1-2-5", NULL
+};
+
+#define cet_ucs4_ofs_iso_8859_supp 160
+#define cet_ucs4_cnt_iso_8859_supp 96
+
+const int cet_ucs4_map_iso_8859_supp[cet_ucs4_cnt_iso_8859_supp] =
+{
+ -1, -1, 0x0100, 0x0108, 0x010a, -1, 0x0116, 0x0112,
+ 0x011c, 0x2018, 0x201c, 0x2122, 0x2190, 0x2191, 0x2192, 0x2193,
+ -1, -1, 0x0101, 0x0109, 0x010b, 0x00f0, 0x0117, 0x0113,
+ 0x011d, 0x2019, 0x201d, 0x266a, 0x215b, 0x215c, 0x215d, 0x215e,
+ -1, 0x011e, 0x0120, 0x0122, 0x0124, 0x0126, 0x0128, 0x0130,
+ 0x012a, 0x012e, 0x0132, 0x0134, 0x0136, 0x013b, 0x013f, 0x0145,
+ 0x2014, 0x014a, 0x014c, 0x0152, 0x0156, 0x015c, 0x0166, 0x00de,
+ 0x0168, 0x016c, 0x016a, 0x0172, 0x0174, 0x00dd, 0x0176, 0x0178,
+ 0x2126, 0x011f, 0x0121, 0x0123, 0x0125, 0x0127, 0x0129, 0x0131,
+ 0x012b, 0x012f, 0x0133, 0x0135, 0x0137, 0x013c, 0x0140, 0x0146,
+ 0x0138, 0x014b, 0x014d, 0x0153, 0x0157, 0x015d, 0x0167, 0x00fe,
+ 0x0169, 0x016d, 0x016b, 0x0173, 0x0175, 0x00fd, 0x0177, 0x0149
+};
+
+#define cet_ucs4_to_iso_8859_supp_ct 88
+
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_supp_links[cet_ucs4_to_iso_8859_supp_ct] =
+{
+ {0x00de, 0xd7} /* capital letter thorn (icelandic) */,
+ {0x00f0, 0xb5} /* small letter eth (icelandic) */,
+ {0x00fe, 0xf7} /* small letter thorn (icelandic) */,
+ {0x0100, 0xa2} /* capital letter a with macron */,
+ {0x0101, 0xb2} /* small letter a with macron */,
+ {0x0108, 0xa3} /* capital letter c with circumflex */,
+ {0x0109, 0xb3} /* small letter c with circumflex */,
+ {0x010a, 0xa4} /* capital letter c with dot above */,
+ {0x010b, 0xb4} /* small letter c with dot above */,
+ {0x0112, 0xa7} /* capital letter e with macron */,
+ {0x0113, 0xb7} /* small letter e with macron */,
+ {0x0116, 0xa6} /* capital letter e with dot above */,
+ {0x0117, 0xb6} /* small letter e with dot above */,
+ {0x011c, 0xa8} /* capital letter g with circumflex */,
+ {0x011d, 0xb8} /* small letter g with circumflex */,
+ {0x011e, 0xc1} /* capital letter g with breve */,
+ {0x011f, 0xe1} /* small letter g with breve */,
+ {0x0120, 0xc2} /* capital letter g with dot above */,
+ {0x0121, 0xe2} /* small letter g with dot above */,
+ {0x0122, 0xc3} /* capital letter g with cedilla */,
+ {0x0123, 0xe3} /* small letter g with cedilla */,
+ {0x0124, 0xc4} /* capital letter h with circumflex */,
+ {0x0125, 0xe4} /* small letter h with circumflex */,
+ {0x0126, 0xc5} /* capital letter h with stroke */,
+ {0x0127, 0xe5} /* small letter h with stroke */,
+ {0x0128, 0xc6} /* capital letter i with tilde */,
+ {0x0129, 0xe6} /* small letter i with tilde */,
+ {0x012a, 0xc8} /* capital letter i with macron */,
+ {0x012b, 0xe8} /* small letter i with macron */,
+ {0x012e, 0xc9} /* capital letter i with ogonek */,
+ {0x012f, 0xe9} /* small letter i with ogonek */,
+ {0x0130, 0xc7} /* capital letter i with dot above */,
+ {0x0131, 0xe7} /* small letter i dotless */,
+ {0x0132, 0xca} /* capital ligature ij */,
+ {0x0133, 0xea} /* small ligature ij */,
+ {0x0134, 0xcb} /* capital letter j with circumflex */,
+ {0x0135, 0xeb} /* small letter j with circumflex */,
+ {0x0136, 0xcc} /* capital letter k with cedilla */,
+ {0x0137, 0xec} /* small letter k with cedilla */,
+ {0x0138, 0xf0} /* small letter kra (greenlandic) */,
+ {0x013b, 0xcd} /* capital letter l with cedilla */,
+ {0x013c, 0xed} /* small letter l with cedilla */,
+ {0x013f, 0xce} /* capital letter l with middle dot */,
+ {0x0140, 0xee} /* small letter l with middle dot */,
+ {0x0145, 0xcf} /* capital letter n with cedilla */,
+ {0x0146, 0xef} /* small letter n with cedilla */,
+ {0x0149, 0xff} /* small letter n preceded by apostrophe */,
+ {0x014a, 0xd1} /* capital letter eng (lappish) */,
+ {0x014b, 0xf1} /* small letter eng (lappish) */,
+ {0x014c, 0xd2} /* capital letter o with macron */,
+ {0x014d, 0xf2} /* small letter o with macron */,
+ {0x0152, 0xd3} /* capital ligature oe */,
+ {0x0153, 0xf3} /* small ligature oe */,
+ {0x0156, 0xd4} /* capital letter r with cedilla */,
+ {0x0157, 0xf4} /* small letter r with cedilla */,
+ {0x015c, 0xd5} /* capital letter s with circumflex */,
+ {0x015d, 0xf5} /* small letter s with circumflex */,
+ {0x0166, 0xd6} /* capital letter t with stroke */,
+ {0x0167, 0xf6} /* small letter t with stroke */,
+ {0x0168, 0xd8} /* capital letter u with tilde */,
+ {0x0169, 0xf8} /* small letter u with tilde */,
+ {0x016a, 0xda} /* capital letter u with macron */,
+ {0x016b, 0xfa} /* small letter u with macron */,
+ {0x016c, 0xd9} /* capital letter u with breve */,
+ {0x016d, 0xf9} /* small letter u with breve */,
+ {0x0172, 0xdb} /* capital letter u with ogonek */,
+ {0x0173, 0xfb} /* small letter u with ogonek */,
+ {0x0174, 0xdc} /* capital letter w with circumflex */,
+ {0x0175, 0xfc} /* small letter w with circumflex */,
+ {0x0176, 0xde} /* capital letter y with circumflex */,
+ {0x0177, 0xfe} /* small letter y with circumflex */,
+ {0x0178, 0xdf} /* capital letter y with diaeresis */,
+ {0x2014, 0xd0} /* dash */,
+ {0x2018, 0xa9} /* single quotation mark */,
+ {0x2019, 0xb9} /* single quotation mark */,
+ {0x201c, 0xaa} /* double quotation mark */,
+ {0x201d, 0xba} /* double quotation mark */,
+ {0x2122, 0xab} /* mark sign */,
+ {0x2126, 0xe0} /* sign */,
+ {0x215b, 0xbc} /* fraction one eighth */,
+ {0x215c, 0xbd} /* fraction three eighths */,
+ {0x215d, 0xbe} /* fraction five eighths */,
+ {0x215e, 0xbf} /* fraction seven eighths */,
+ {0x2190, 0xac} /* arrow */,
+ {0x2191, 0xad} /* arrow */,
+ {0x2192, 0xae} /* arrow */,
+ {0x2193, 0xaf} /* arrow */,
+ {0x266a, 0xbb} /* note */
+};
+
+/*
+#define cet_ucs4_to_iso_8859_supp_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_iso_8859_supp_extra[cet_ucs4_to_iso_8859_supp_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_iso_8859_supp = /* defined in cet.h */
+{
+ cet_cs_name_iso_8859_supp, /* name of character set */
+ cet_cs_alias_iso_8859_supp, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_iso_8859_supp, /* char to UCS-4 value table */
+ cet_ucs4_ofs_iso_8859_supp, /* first non standard character */
+ cet_ucs4_cnt_iso_8859_supp, /* number of values in table */
+
+ cet_ucs4_to_iso_8859_supp_links, /* UCS-4 to char links */
+ cet_ucs4_to_iso_8859_supp_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int iso_8859_supp_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ -1, -1, 0x0100, 0x0108, 0x010a, -1, 0x0116, 0x0112,
+ 0x011c, 0x2018, 0x201c, 0x2122, 0x2190, 0x2191, 0x2192, 0x2193,
+ -1, -1, 0x0101, 0x0109, 0x010b, 0x00f0, 0x0117, 0x0113,
+ 0x011d, 0x2019, 0x201d, 0x266a, 0x215b, 0x215c, 0x215d, 0x215e,
+ -1, 0x011e, 0x0120, 0x0122, 0x0124, 0x0126, 0x0128, 0x0130,
+ 0x012a, 0x012e, 0x0132, 0x0134, 0x0136, 0x013b, 0x013f, 0x0145,
+ 0x2014, 0x014a, 0x014c, 0x0152, 0x0156, 0x015c, 0x0166, 0x00de,
+ 0x0168, 0x016c, 0x016a, 0x0172, 0x0174, 0x00dd, 0x0176, 0x0178,
+ 0x2126, 0x011f, 0x0121, 0x0123, 0x0125, 0x0127, 0x0129, 0x0131,
+ 0x012b, 0x012f, 0x0133, 0x0135, 0x0137, 0x013c, 0x0140, 0x0146,
+ 0x0138, 0x014b, 0x014d, 0x0153, 0x0157, 0x015d, 0x0167, 0x00fe,
+ 0x0169, 0x016d, 0x016b, 0x0173, 0x0175, 0x00fd, 0x0177, 0x0149
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "IT" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef it_h
+#define it_h
+
+#define cet_cs_name_it "IT"
+
+const char *cet_cs_alias_it[] =
+{
+ "IT", "ISO646-IT", "iso-ir-15", NULL
+};
+
+#define cet_ucs4_ofs_it 35
+#define cet_ucs4_cnt_it 93
+
+const int cet_ucs4_map_it[cet_ucs4_cnt_it] =
+{
+ 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a,
+ 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032,
+ 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a,
+ 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x00a7, 0x0041, 0x0042,
+ 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+ 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+ 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+ 0x00b0, 0x00e7, 0x00e9, 0x005e, 0x005f, 0x00f9, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x00e0, 0x00f2, 0x00e8, 0x00ec, 0x007f
+};
+
+#define cet_ucs4_to_it_ct 10
+
+const cet_ucs4_link_t cet_ucs4_to_it_links[cet_ucs4_to_it_ct] =
+{
+ {0x00a3, 0x23} /* sign */,
+ {0x00a7, 0x40} /* sign */,
+ {0x00b0, 0x5b} /* sign */,
+ {0x00e0, 0x7b} /* small letter a with grave */,
+ {0x00e7, 0x5c} /* small letter c with cedilla */,
+ {0x00e8, 0x7d} /* small letter e with grave */,
+ {0x00e9, 0x5d} /* small letter e with acute */,
+ {0x00ec, 0x7e} /* small letter i with grave */,
+ {0x00f2, 0x7c} /* small letter o with grave */,
+ {0x00f9, 0x60} /* small letter u with grave */
+};
+
+/*
+#define cet_ucs4_to_it_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_it_extra[cet_ucs4_to_it_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_it = /* defined in cet.h */
+{
+ cet_cs_name_it, /* name of character set */
+ cet_cs_alias_it, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_it, /* char to UCS-4 value table */
+ cet_ucs4_ofs_it, /* first non standard character */
+ cet_ucs4_cnt_it, /* number of values in table */
+
+ cet_ucs4_to_it_links, /* UCS-4 to char links */
+ cet_ucs4_to_it_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int it_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00a7, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00b0, 0x00e7, 0x00e9, 0x005e, 0x005f,
+ 0x00f9, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e0, 0x00f2, 0x00e8, 0x00ec, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "JIS_C6220-1969-ro" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef jis_c6220_1969_ro_h
+#define jis_c6220_1969_ro_h
+
+#define cet_cs_name_jis_c6220_1969_ro "JIS_C6220-1969-ro"
+
+const char *cet_cs_alias_jis_c6220_1969_ro[] =
+{
+ "JIS_C6220-1969-ro", "csISO14JISC6220ro", "ISO646-JP", "iso-ir-14",
+ "jp", NULL
+};
+
+#define cet_ucs4_ofs_jis_c6220_1969_ro 92
+#define cet_ucs4_cnt_jis_c6220_1969_ro 36
+
+const int cet_ucs4_map_jis_c6220_1969_ro[cet_ucs4_cnt_jis_c6220_1969_ro] =
+{
+ 0x00a5, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b,
+ 0x007c, 0x007d, 0x203e, 0x007f
+};
+
+#define cet_ucs4_to_jis_c6220_1969_ro_ct 2
+
+const cet_ucs4_link_t cet_ucs4_to_jis_c6220_1969_ro_links[cet_ucs4_to_jis_c6220_1969_ro_ct] =
+{
+ {0x00a5, 0x5c} /* sign */,
+ {0x203e, 0x7e} /* overline */
+};
+
+/*
+#define cet_ucs4_to_jis_c6220_1969_ro_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_jis_c6220_1969_ro_extra[cet_ucs4_to_jis_c6220_1969_ro_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_jis_c6220_1969_ro = /* defined in cet.h */
+{
+ cet_cs_name_jis_c6220_1969_ro, /* name of character set */
+ cet_cs_alias_jis_c6220_1969_ro, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_jis_c6220_1969_ro, /* char to UCS-4 value table */
+ cet_ucs4_ofs_jis_c6220_1969_ro, /* first non standard character */
+ cet_ucs4_cnt_jis_c6220_1969_ro, /* number of values in table */
+
+ cet_ucs4_to_jis_c6220_1969_ro_links, /* UCS-4 to char links */
+ cet_ucs4_to_jis_c6220_1969_ro_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int jis_c6220_1969_ro_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x00a5, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x203e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "JIS_X0201" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef jis_x0201_h
+#define jis_x0201_h
+
+#define cet_cs_name_jis_x0201 "JIS_X0201"
+
+const char *cet_cs_alias_jis_x0201[] =
+{
+ "JIS_X0201", "csHalfWidthKatakana", "JIS0201", "JISX0201-1976",
+ "JISX0201.1976-0", "X0201", NULL
+};
+
+#define cet_ucs4_ofs_jis_x0201 92
+#define cet_ucs4_cnt_jis_x0201 132
+
+const int cet_ucs4_map_jis_x0201[cet_ucs4_cnt_jis_x0201] =
+{
+ 0x00a5, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b,
+ 0x007c, 0x007d, 0x203e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x009c, 0x009d, 0x009e, 0x009f, -1, 0x3002, 0x300c, 0x300d,
+ 0x3001, 0x30fb, 0x30f2, 0x30a1, 0x30a3, 0x30a5, 0x30a7, 0x30a9,
+ 0x30e3, 0x30e5, 0x30e7, 0x30c3, 0x30fc, 0x30a2, 0x30a4, 0x30a6,
+ 0x30a8, 0x30aa, 0x30ab, 0x30ad, 0x30af, 0x30b1, 0x30b3, 0x30b5,
+ 0x30b7, 0x30b9, 0x30bb, 0x30bd, 0x30bf, 0x30c1, 0x30c4, 0x30c6,
+ 0x30c8, 0x30ca, 0x30cb, 0x30cc, 0x30cd, 0x30ce, 0x30cf, 0x30d2,
+ 0x30d5, 0x30d8, 0x30db, 0x30de, 0x30df, 0x30e0, 0x30e1, 0x30e2,
+ 0x30e4, 0x30e6, 0x30e8, 0x30e9, 0x30ea, 0x30eb, 0x30ec, 0x30ed,
+ 0x30ef, 0x30f3, 0x309b, 0x309c
+};
+
+#define cet_ucs4_to_jis_x0201_ct 65
+
+const cet_ucs4_link_t cet_ucs4_to_jis_x0201_links[cet_ucs4_to_jis_x0201_ct] =
+{
+ {0x00a5, 0x5c} /* sign */,
+ {0x203e, 0x7e} /* overline */,
+ {0x3001, 0xa4} /* comma */,
+ {0x3002, 0xa1} /* period */,
+ {0x300c, 0xa2} /* corner bracket */,
+ {0x300d, 0xa3} /* corner bracket */,
+ {0x309b, 0xde} /* voiced sound mark */,
+ {0x309c, 0xdf} /* semi-voiced sound mark */,
+ {0x30a1, 0xa7} /* letter small a */,
+ {0x30a2, 0xb1} /* letter a */,
+ {0x30a3, 0xa8} /* letter small i */,
+ {0x30a4, 0xb2} /* letter i */,
+ {0x30a5, 0xa9} /* letter small u */,
+ {0x30a6, 0xb3} /* letter u */,
+ {0x30a7, 0xaa} /* letter small e */,
+ {0x30a8, 0xb4} /* letter e */,
+ {0x30a9, 0xab} /* letter small o */,
+ {0x30aa, 0xb5} /* letter o */,
+ {0x30ab, 0xb6} /* letter ka */,
+ {0x30ad, 0xb7} /* letter ki */,
+ {0x30af, 0xb8} /* letter ku */,
+ {0x30b1, 0xb9} /* letter ke */,
+ {0x30b3, 0xba} /* letter ko */,
+ {0x30b5, 0xbb} /* letter sa */,
+ {0x30b7, 0xbc} /* letter si */,
+ {0x30b9, 0xbd} /* letter su */,
+ {0x30bb, 0xbe} /* letter se */,
+ {0x30bd, 0xbf} /* letter so */,
+ {0x30bf, 0xc0} /* letter ta */,
+ {0x30c1, 0xc1} /* letter ti */,
+ {0x30c3, 0xaf} /* letter small tu */,
+ {0x30c4, 0xc2} /* letter tu */,
+ {0x30c6, 0xc3} /* letter te */,
+ {0x30c8, 0xc4} /* letter to */,
+ {0x30ca, 0xc5} /* letter na */,
+ {0x30cb, 0xc6} /* letter ni */,
+ {0x30cc, 0xc7} /* letter nu */,
+ {0x30cd, 0xc8} /* letter ne */,
+ {0x30ce, 0xc9} /* letter no */,
+ {0x30cf, 0xca} /* letter ha */,
+ {0x30d2, 0xcb} /* letter hi */,
+ {0x30d5, 0xcc} /* letter hu */,
+ {0x30d8, 0xcd} /* letter he */,
+ {0x30db, 0xce} /* letter ho */,
+ {0x30de, 0xcf} /* letter ma */,
+ {0x30df, 0xd0} /* letter mi */,
+ {0x30e0, 0xd1} /* letter mu */,
+ {0x30e1, 0xd2} /* letter me */,
+ {0x30e2, 0xd3} /* letter mo */,
+ {0x30e3, 0xac} /* letter small ya */,
+ {0x30e4, 0xd4} /* letter ya */,
+ {0x30e5, 0xad} /* letter small yu */,
+ {0x30e6, 0xd5} /* letter yu */,
+ {0x30e7, 0xae} /* letter small yo */,
+ {0x30e8, 0xd6} /* letter yo */,
+ {0x30e9, 0xd7} /* letter ra */,
+ {0x30ea, 0xd8} /* letter ri */,
+ {0x30eb, 0xd9} /* letter ru */,
+ {0x30ec, 0xda} /* letter re */,
+ {0x30ed, 0xdb} /* letter ro */,
+ {0x30ef, 0xdc} /* letter wa */,
+ {0x30f2, 0xa6} /* letter wo */,
+ {0x30f3, 0xdd} /* letter n */,
+ {0x30fb, 0xa5} /* middle dot */,
+ {0x30fc, 0xb0} /* prolonged sound mark */
+};
+
+/*
+#define cet_ucs4_to_jis_x0201_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_jis_x0201_extra[cet_ucs4_to_jis_x0201_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_jis_x0201 = /* defined in cet.h */
+{
+ cet_cs_name_jis_x0201, /* name of character set */
+ cet_cs_alias_jis_x0201, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_jis_x0201, /* char to UCS-4 value table */
+ cet_ucs4_ofs_jis_x0201, /* first non standard character */
+ cet_ucs4_cnt_jis_x0201, /* number of values in table */
+
+ cet_ucs4_to_jis_x0201_links, /* UCS-4 to char links */
+ cet_ucs4_to_jis_x0201_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int jis_x0201_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x00a5, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x203e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ -1, 0x3002, 0x300c, 0x300d, 0x3001, 0x30fb, 0x30f2, 0x30a1,
+ 0x30a3, 0x30a5, 0x30a7, 0x30a9, 0x30e3, 0x30e5, 0x30e7, 0x30c3,
+ 0x30fc, 0x30a2, 0x30a4, 0x30a6, 0x30a8, 0x30aa, 0x30ab, 0x30ad,
+ 0x30af, 0x30b1, 0x30b3, 0x30b5, 0x30b7, 0x30b9, 0x30bb, 0x30bd,
+ 0x30bf, 0x30c1, 0x30c4, 0x30c6, 0x30c8, 0x30ca, 0x30cb, 0x30cc,
+ 0x30cd, 0x30ce, 0x30cf, 0x30d2, 0x30d5, 0x30d8, 0x30db, 0x30de,
+ 0x30df, 0x30e0, 0x30e1, 0x30e2, 0x30e4, 0x30e6, 0x30e8, 0x30e9,
+ 0x30ea, 0x30eb, 0x30ec, 0x30ed, 0x30ef, 0x30f3, 0x309b, 0x309c,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "JUS_I.B1.002" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef jus_i_b1_002_h
+#define jus_i_b1_002_h
+
+#define cet_cs_name_jus_i_b1_002 "JUS_I.B1.002"
+
+const char *cet_cs_alias_jus_i_b1_002[] =
+{
+ "JUS_I.B1.002", "ISO646-YU", "iso-ir-141", "js",
+ "yu", NULL
+};
+
+#define cet_ucs4_ofs_jus_i_b1_002 64
+#define cet_ucs4_cnt_jus_i_b1_002 64
+
+const int cet_ucs4_map_jus_i_b1_002[cet_ucs4_cnt_jus_i_b1_002] =
+{
+ 0x017d, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x0160, 0x0110, 0x0106, 0x010c, 0x005f,
+ 0x017e, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x0161, 0x0111, 0x0107, 0x010d, 0x007f
+};
+
+#define cet_ucs4_to_jus_i_b1_002_ct 10
+
+const cet_ucs4_link_t cet_ucs4_to_jus_i_b1_002_links[cet_ucs4_to_jus_i_b1_002_ct] =
+{
+ {0x0106, 0x5d} /* capital letter c with acute */,
+ {0x0107, 0x7d} /* small letter c with acute */,
+ {0x010c, 0x5e} /* capital letter c with caron */,
+ {0x010d, 0x7e} /* small letter c with caron */,
+ {0x0110, 0x5c} /* capital letter d with stroke */,
+ {0x0111, 0x7c} /* small letter d with stroke */,
+ {0x0160, 0x5b} /* capital letter s with caron */,
+ {0x0161, 0x7b} /* small letter s with caron */,
+ {0x017d, 0x40} /* capital letter z with caron */,
+ {0x017e, 0x60} /* small letter z with caron */
+};
+
+/*
+#define cet_ucs4_to_jus_i_b1_002_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_jus_i_b1_002_extra[cet_ucs4_to_jus_i_b1_002_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_jus_i_b1_002 = /* defined in cet.h */
+{
+ cet_cs_name_jus_i_b1_002, /* name of character set */
+ cet_cs_alias_jus_i_b1_002, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_jus_i_b1_002, /* char to UCS-4 value table */
+ cet_ucs4_ofs_jus_i_b1_002, /* first non standard character */
+ cet_ucs4_cnt_jus_i_b1_002, /* number of values in table */
+
+ cet_ucs4_to_jus_i_b1_002_links, /* UCS-4 to char links */
+ cet_ucs4_to_jus_i_b1_002_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int jus_i_b1_002_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x017d, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x0160, 0x0110, 0x0106, 0x010c, 0x005f,
+ 0x017e, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x0161, 0x0111, 0x0107, 0x010d, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "JUS_I.B1.003-mac" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef jus_i_b1_003_mac_h
+#define jus_i_b1_003_mac_h
+
+#define cet_cs_name_jus_i_b1_003_mac "JUS_I.B1.003-mac"
+
+const char *cet_cs_alias_jus_i_b1_003_mac[] =
+{
+ "JUS_I.B1.003-mac", "iso-ir-147", "macedonian", NULL
+};
+
+#define cet_ucs4_ofs_jus_i_b1_003_mac 64
+#define cet_ucs4_cnt_jus_i_b1_003_mac 64
+
+const int cet_ucs4_map_jus_i_b1_003_mac[cet_ucs4_cnt_jus_i_b1_003_mac] =
+{
+ 0x0416, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0408, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x0409, 0x0420, 0x0421, 0x0422, 0x0423, 0x0412, 0x040a,
+ 0x040f, 0x0405, 0x0417, 0x0428, 0x0403, 0x040c, 0x0427, 0x005f,
+ 0x0436, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0458, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x0459, 0x0440, 0x0441, 0x0442, 0x0443, 0x0432, 0x045a,
+ 0x045f, 0x0455, 0x0437, 0x0448, 0x0453, 0x045c, 0x0447, 0x007f
+};
+
+#define cet_ucs4_to_jus_i_b1_003_mac_ct 62
+
+const cet_ucs4_link_t cet_ucs4_to_jus_i_b1_003_mac_links[cet_ucs4_to_jus_i_b1_003_mac_ct] =
+{
+ {0x0403, 0x5c} /* capital letter gje (macedonian) */,
+ {0x0405, 0x59} /* capital letter dze (macedonian) */,
+ {0x0408, 0x4a} /* capital letter je */,
+ {0x0409, 0x51} /* capital letter lje */,
+ {0x040a, 0x57} /* capital letter nje */,
+ {0x040c, 0x5d} /* capital letter kje (macedonian) */,
+ {0x040f, 0x58} /* capital letter dzhe */,
+ {0x0410, 0x41} /* capital letter a */,
+ {0x0411, 0x42} /* capital letter be */,
+ {0x0412, 0x56} /* capital letter ve */,
+ {0x0413, 0x47} /* capital letter ghe */,
+ {0x0414, 0x44} /* capital letter de */,
+ {0x0415, 0x45} /* capital letter ie */,
+ {0x0416, 0x40} /* capital letter zhe */,
+ {0x0417, 0x5a} /* capital letter ze */,
+ {0x0418, 0x49} /* capital letter i */,
+ {0x041a, 0x4b} /* capital letter ka */,
+ {0x041b, 0x4c} /* capital letter el */,
+ {0x041c, 0x4d} /* capital letter em */,
+ {0x041d, 0x4e} /* capital letter en */,
+ {0x041e, 0x4f} /* capital letter o */,
+ {0x041f, 0x50} /* capital letter pe */,
+ {0x0420, 0x52} /* capital letter er */,
+ {0x0421, 0x53} /* capital letter es */,
+ {0x0422, 0x54} /* capital letter te */,
+ {0x0423, 0x55} /* capital letter u */,
+ {0x0424, 0x46} /* capital letter ef */,
+ {0x0425, 0x48} /* capital letter ha */,
+ {0x0426, 0x43} /* capital letter tse */,
+ {0x0427, 0x5e} /* capital letter che */,
+ {0x0428, 0x5b} /* capital letter sha */,
+ {0x0430, 0x61} /* small letter a */,
+ {0x0431, 0x62} /* small letter be */,
+ {0x0432, 0x76} /* small letter ve */,
+ {0x0433, 0x67} /* small letter ghe */,
+ {0x0434, 0x64} /* small letter de */,
+ {0x0435, 0x65} /* small letter ie */,
+ {0x0436, 0x60} /* small letter zhe */,
+ {0x0437, 0x7a} /* small letter ze */,
+ {0x0438, 0x69} /* small letter i */,
+ {0x043a, 0x6b} /* small letter ka */,
+ {0x043b, 0x6c} /* small letter el */,
+ {0x043c, 0x6d} /* small letter em */,
+ {0x043d, 0x6e} /* small letter en */,
+ {0x043e, 0x6f} /* small letter o */,
+ {0x043f, 0x70} /* small letter pe */,
+ {0x0440, 0x72} /* small letter er */,
+ {0x0441, 0x73} /* small letter es */,
+ {0x0442, 0x74} /* small letter te */,
+ {0x0443, 0x75} /* small letter u */,
+ {0x0444, 0x66} /* small letter ef */,
+ {0x0445, 0x68} /* small letter ha */,
+ {0x0446, 0x63} /* small letter tse */,
+ {0x0447, 0x7e} /* small letter che */,
+ {0x0448, 0x7b} /* small letter sha */,
+ {0x0453, 0x7c} /* small letter gje (macedonian) */,
+ {0x0455, 0x79} /* small letter dze (macedonian) */,
+ {0x0458, 0x6a} /* small letter je */,
+ {0x0459, 0x71} /* small letter lje */,
+ {0x045a, 0x77} /* small letter nje */,
+ {0x045c, 0x7d} /* small letter kje (macedonian) */,
+ {0x045f, 0x78} /* small letter dzhe */
+};
+
+/*
+#define cet_ucs4_to_jus_i_b1_003_mac_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_jus_i_b1_003_mac_extra[cet_ucs4_to_jus_i_b1_003_mac_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_jus_i_b1_003_mac = /* defined in cet.h */
+{
+ cet_cs_name_jus_i_b1_003_mac, /* name of character set */
+ cet_cs_alias_jus_i_b1_003_mac, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_jus_i_b1_003_mac, /* char to UCS-4 value table */
+ cet_ucs4_ofs_jus_i_b1_003_mac, /* first non standard character */
+ cet_ucs4_cnt_jus_i_b1_003_mac, /* number of values in table */
+
+ cet_ucs4_to_jus_i_b1_003_mac_links, /* UCS-4 to char links */
+ cet_ucs4_to_jus_i_b1_003_mac_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int jus_i_b1_003_mac_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0416, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0408, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x0409, 0x0420, 0x0421, 0x0422, 0x0423, 0x0412, 0x040a,
+ 0x040f, 0x0405, 0x0417, 0x0428, 0x0403, 0x040c, 0x0427, 0x005f,
+ 0x0436, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0458, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x0459, 0x0440, 0x0441, 0x0442, 0x0443, 0x0432, 0x045a,
+ 0x045f, 0x0455, 0x0437, 0x0448, 0x0453, 0x045c, 0x0447, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "JUS_I.B1.003-serb" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef jus_i_b1_003_serb_h
+#define jus_i_b1_003_serb_h
+
+#define cet_cs_name_jus_i_b1_003_serb "JUS_I.B1.003-serb"
+
+const char *cet_cs_alias_jus_i_b1_003_serb[] =
+{
+ "JUS_I.B1.003-serb", "iso-ir-146", "serbian", NULL
+};
+
+#define cet_ucs4_ofs_jus_i_b1_003_serb 64
+#define cet_ucs4_cnt_jus_i_b1_003_serb 64
+
+const int cet_ucs4_map_jus_i_b1_003_serb[cet_ucs4_cnt_jus_i_b1_003_serb] =
+{
+ 0x0416, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0408, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x0409, 0x0420, 0x0421, 0x0422, 0x0423, 0x0412, 0x040a,
+ 0x040f, 0x0405, 0x0417, 0x0428, 0x0402, 0x040b, 0x0427, 0x005f,
+ 0x0436, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0458, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x0459, 0x0440, 0x0441, 0x0442, 0x0443, 0x0432, 0x045a,
+ 0x045f, 0x0455, 0x0437, 0x0448, 0x0452, 0x045b, 0x0447, 0x007f
+};
+
+#define cet_ucs4_to_jus_i_b1_003_serb_ct 62
+
+const cet_ucs4_link_t cet_ucs4_to_jus_i_b1_003_serb_links[cet_ucs4_to_jus_i_b1_003_serb_ct] =
+{
+ {0x0402, 0x5c} /* capital letter dje (serbocroatian) */,
+ {0x0405, 0x59} /* capital letter dze (macedonian) */,
+ {0x0408, 0x4a} /* capital letter je */,
+ {0x0409, 0x51} /* capital letter lje */,
+ {0x040a, 0x57} /* capital letter nje */,
+ {0x040b, 0x5d} /* capital letter tshe (serbocroatian) */,
+ {0x040f, 0x58} /* capital letter dzhe */,
+ {0x0410, 0x41} /* capital letter a */,
+ {0x0411, 0x42} /* capital letter be */,
+ {0x0412, 0x56} /* capital letter ve */,
+ {0x0413, 0x47} /* capital letter ghe */,
+ {0x0414, 0x44} /* capital letter de */,
+ {0x0415, 0x45} /* capital letter ie */,
+ {0x0416, 0x40} /* capital letter zhe */,
+ {0x0417, 0x5a} /* capital letter ze */,
+ {0x0418, 0x49} /* capital letter i */,
+ {0x041a, 0x4b} /* capital letter ka */,
+ {0x041b, 0x4c} /* capital letter el */,
+ {0x041c, 0x4d} /* capital letter em */,
+ {0x041d, 0x4e} /* capital letter en */,
+ {0x041e, 0x4f} /* capital letter o */,
+ {0x041f, 0x50} /* capital letter pe */,
+ {0x0420, 0x52} /* capital letter er */,
+ {0x0421, 0x53} /* capital letter es */,
+ {0x0422, 0x54} /* capital letter te */,
+ {0x0423, 0x55} /* capital letter u */,
+ {0x0424, 0x46} /* capital letter ef */,
+ {0x0425, 0x48} /* capital letter ha */,
+ {0x0426, 0x43} /* capital letter tse */,
+ {0x0427, 0x5e} /* capital letter che */,
+ {0x0428, 0x5b} /* capital letter sha */,
+ {0x0430, 0x61} /* small letter a */,
+ {0x0431, 0x62} /* small letter be */,
+ {0x0432, 0x76} /* small letter ve */,
+ {0x0433, 0x67} /* small letter ghe */,
+ {0x0434, 0x64} /* small letter de */,
+ {0x0435, 0x65} /* small letter ie */,
+ {0x0436, 0x60} /* small letter zhe */,
+ {0x0437, 0x7a} /* small letter ze */,
+ {0x0438, 0x69} /* small letter i */,
+ {0x043a, 0x6b} /* small letter ka */,
+ {0x043b, 0x6c} /* small letter el */,
+ {0x043c, 0x6d} /* small letter em */,
+ {0x043d, 0x6e} /* small letter en */,
+ {0x043e, 0x6f} /* small letter o */,
+ {0x043f, 0x70} /* small letter pe */,
+ {0x0440, 0x72} /* small letter er */,
+ {0x0441, 0x73} /* small letter es */,
+ {0x0442, 0x74} /* small letter te */,
+ {0x0443, 0x75} /* small letter u */,
+ {0x0444, 0x66} /* small letter ef */,
+ {0x0445, 0x68} /* small letter ha */,
+ {0x0446, 0x63} /* small letter tse */,
+ {0x0447, 0x7e} /* small letter che */,
+ {0x0448, 0x7b} /* small letter sha */,
+ {0x0452, 0x7c} /* small letter dje (serbocroatian) */,
+ {0x0455, 0x79} /* small letter dze (macedonian) */,
+ {0x0458, 0x6a} /* small letter je */,
+ {0x0459, 0x71} /* small letter lje */,
+ {0x045a, 0x77} /* small letter nje */,
+ {0x045b, 0x7d} /* small letter tshe (serbocroatian) */,
+ {0x045f, 0x78} /* small letter dzhe */
+};
+
+/*
+#define cet_ucs4_to_jus_i_b1_003_serb_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_jus_i_b1_003_serb_extra[cet_ucs4_to_jus_i_b1_003_serb_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_jus_i_b1_003_serb = /* defined in cet.h */
+{
+ cet_cs_name_jus_i_b1_003_serb, /* name of character set */
+ cet_cs_alias_jus_i_b1_003_serb, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_jus_i_b1_003_serb, /* char to UCS-4 value table */
+ cet_ucs4_ofs_jus_i_b1_003_serb, /* first non standard character */
+ cet_ucs4_cnt_jus_i_b1_003_serb, /* number of values in table */
+
+ cet_ucs4_to_jus_i_b1_003_serb_links, /* UCS-4 to char links */
+ cet_ucs4_to_jus_i_b1_003_serb_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int jus_i_b1_003_serb_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0416, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0408, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x0409, 0x0420, 0x0421, 0x0422, 0x0423, 0x0412, 0x040a,
+ 0x040f, 0x0405, 0x0417, 0x0428, 0x0402, 0x040b, 0x0427, 0x005f,
+ 0x0436, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0458, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x0459, 0x0440, 0x0441, 0x0442, 0x0443, 0x0432, 0x045a,
+ 0x045f, 0x0455, 0x0437, 0x0448, 0x0452, 0x045b, 0x0447, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "KEYBCS2" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef keybcs2_h
+#define keybcs2_h
+
+#define cet_cs_name_keybcs2 "KEYBCS2"
+
+const char *cet_cs_alias_keybcs2[] =
+{
+ "KEYBCS2", "Kamenicky", NULL
+};
+
+#define cet_ucs4_ofs_keybcs2 128
+#define cet_ucs4_cnt_keybcs2 128
+
+const int cet_ucs4_map_keybcs2[cet_ucs4_cnt_keybcs2] =
+{
+ 0x010c, 0x00fc, 0x00e9, 0x010f, 0x00e4, 0x010e, 0x0164, 0x010d,
+ 0x011b, 0x011a, 0x0139, 0x00cd, 0x013e, 0x013a, 0x00c4, 0x00c1,
+ 0x00c9, 0x017e, 0x017d, 0x00f4, 0x00f6, 0x00d3, 0x016f, 0x00da,
+ 0x00fd, 0x00d6, 0x00dc, 0x0160, 0x013d, 0x00dd, 0x0158, 0x0165,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x0148, 0x0147, 0x016e, 0x00d4,
+ 0x0161, 0x0159, 0x0155, 0x0154, 0x00bc, 0x00a7, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x03b2, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x03bc, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x2205, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x2218, 0x00b7, 0x2219, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+
+#define cet_ucs4_to_keybcs2_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_keybcs2_links[cet_ucs4_to_keybcs2_ct] =
+{
+ {0x00a0, 0xff} /* space */,
+ {0x00a7, 0xad} /* sign */,
+ {0x00ab, 0xae} /* double angle quotation mark */,
+ {0x00b1, 0xf1} /* sign */,
+ {0x00b2, 0xfd} /* two */,
+ {0x00b7, 0xf9} /* dot */,
+ {0x00bb, 0xaf} /* double angle quotation mark */,
+ {0x00bc, 0xac} /* fraction one quarter */,
+ {0x00c1, 0x8f} /* capital letter a with acute */,
+ {0x00c4, 0x8e} /* capital letter a with diaeresis */,
+ {0x00c9, 0x90} /* capital letter e with acute */,
+ {0x00cd, 0x8b} /* capital letter i with acute */,
+ {0x00d3, 0x95} /* capital letter o with acute */,
+ {0x00d4, 0xa7} /* capital letter o with circumflex */,
+ {0x00d6, 0x99} /* capital letter o with diaeresis */,
+ {0x00da, 0x97} /* capital letter u with acute */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00dd, 0x9d} /* capital letter y with acute */,
+ {0x00e1, 0xa0} /* small letter a with acute */,
+ {0x00e4, 0x84} /* small letter a with diaeresis */,
+ {0x00e9, 0x82} /* small letter e with acute */,
+ {0x00ed, 0xa1} /* small letter i with acute */,
+ {0x00f3, 0xa2} /* small letter o with acute */,
+ {0x00f4, 0x93} /* small letter o with circumflex */,
+ {0x00f6, 0x94} /* small letter o with diaeresis */,
+ {0x00f7, 0xf6} /* sign */,
+ {0x00fa, 0xa3} /* small letter u with acute */,
+ {0x00fc, 0x81} /* small letter u with diaeresis */,
+ {0x00fd, 0x98} /* small letter y with acute */,
+ {0x010c, 0x80} /* capital letter c with caron */,
+ {0x010d, 0x87} /* small letter c with caron */,
+ {0x010e, 0x85} /* capital letter d with caron */,
+ {0x010f, 0x83} /* small letter d with caron */,
+ {0x011a, 0x89} /* capital letter e with caron */,
+ {0x011b, 0x88} /* small letter e with caron */,
+ {0x0139, 0x8a} /* capital letter l with acute */,
+ {0x013a, 0x8d} /* small letter l with acute */,
+ {0x013d, 0x9c} /* capital letter l with caron */,
+ {0x013e, 0x8c} /* small letter l with caron */,
+ {0x0147, 0xa5} /* capital letter n with caron */,
+ {0x0148, 0xa4} /* small letter n with caron */,
+ {0x0154, 0xab} /* capital letter r with acute */,
+ {0x0155, 0xaa} /* small letter r with acute */,
+ {0x0158, 0x9e} /* capital letter r with caron */,
+ {0x0159, 0xa9} /* small letter r with caron */,
+ {0x0160, 0x9b} /* capital letter s with caron */,
+ {0x0161, 0xa8} /* small letter s with caron */,
+ {0x0164, 0x86} /* capital letter t with caron */,
+ {0x0165, 0x9f} /* small letter t with caron */,
+ {0x016e, 0xa6} /* capital letter u with ring above */,
+ {0x016f, 0x96} /* small letter u with ring above */,
+ {0x017d, 0x92} /* capital letter z with caron */,
+ {0x017e, 0x91} /* small letter z with caron */,
+ {0x0393, 0xe2} /* capital letter gamma */,
+ {0x0398, 0xe9} /* capital letter theta */,
+ {0x03a3, 0xe4} /* capital letter sigma */,
+ {0x03a6, 0xe8} /* capital letter phi */,
+ {0x03a9, 0xea} /* capital letter omega */,
+ {0x03b1, 0xe0} /* small letter alpha */,
+ {0x03b2, 0xe1} /* small letter beta */,
+ {0x03b4, 0xeb} /* small letter delta */,
+ {0x03b5, 0xee} /* small letter epsilon */,
+ {0x03bc, 0xe6} /* small letter mu */,
+ {0x03c0, 0xe3} /* small letter pi */,
+ {0x03c3, 0xe5} /* small letter sigma */,
+ {0x03c4, 0xe7} /* small letter tau */,
+ {0x207f, 0xfc} /* latin small letter n */,
+ {0x2205, 0xed} /* set */,
+ {0x2218, 0xf8} /* operator */,
+ {0x2219, 0xfa} /* operator */,
+ {0x221a, 0xfb} /* root */,
+ {0x221e, 0xec} /* infinity */,
+ {0x2229, 0xef} /* intersection */,
+ {0x2248, 0xf7} /* equal to */,
+ {0x2261, 0xf0} /* to */,
+ {0x2264, 0xf3} /* or equal to */,
+ {0x2265, 0xf2} /* or equal to */,
+ {0x2320, 0xf4} /* half integral */,
+ {0x2321, 0xf5} /* half integral */,
+ {0x2500, 0xc4} /* drawings light horizontal */,
+ {0x2502, 0xb3} /* drawings light vertical */,
+ {0x250c, 0xda} /* drawings light down and right */,
+ {0x2510, 0xbf} /* drawings light down and left */,
+ {0x2514, 0xc0} /* drawings light up and right */,
+ {0x2518, 0xd9} /* drawings light up and left */,
+ {0x251c, 0xc3} /* drawings light vertical and right */,
+ {0x2524, 0xb4} /* drawings light vertical and left */,
+ {0x252c, 0xc2} /* drawings light down and horizontal */,
+ {0x2534, 0xc1} /* drawings light up and horizontal */,
+ {0x253c, 0xc5} /* drawings light vertical and horizontal */,
+ {0x2550, 0xcd} /* drawings heavy horizontal */,
+ {0x2551, 0xba} /* drawings heavy vertical */,
+ {0x2552, 0xd5} /* drawings down light and right heavy */,
+ {0x2553, 0xd6} /* drawings down heavy and right light */,
+ {0x2554, 0xc9} /* drawings heavy down and right */,
+ {0x2555, 0xb8} /* drawings down light and left heavy */,
+ {0x2556, 0xb7} /* drawings down heavy and left light */,
+ {0x2557, 0xbb} /* drawings heavy down and left */,
+ {0x2558, 0xd4} /* drawings up light and right heavy */,
+ {0x2559, 0xd3} /* drawings up heavy and right light */,
+ {0x255a, 0xc8} /* drawings heavy up and right */,
+ {0x255b, 0xbe} /* drawings up light and left heavy */,
+ {0x255c, 0xbd} /* drawings up heavy and left light */,
+ {0x255d, 0xbc} /* drawings heavy up and left */,
+ {0x255e, 0xc6} /* drawings vertical light and right heavy */,
+ {0x255f, 0xc7} /* drawings vertical heavy and right light */,
+ {0x2560, 0xcc} /* drawings heavy vertical and right */,
+ {0x2561, 0xb5} /* drawings vertical light and left heavy */,
+ {0x2562, 0xb6} /* drawings vertical heavy and left light */,
+ {0x2563, 0xb9} /* drawings heavy vertical and left */,
+ {0x2564, 0xd1} /* drawings down light and horizontal heavy */,
+ {0x2565, 0xd2} /* drawings down heavy and horizontal light */,
+ {0x2566, 0xcb} /* drawings heavy down and horizontal */,
+ {0x2567, 0xcf} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xd0} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xca} /* drawings heavy up and horizontal */,
+ {0x256a, 0xd8} /* drawings vertical light and horizontal heavy */,
+ {0x256b, 0xd7} /* drawings vertical heavy and horizontal light */,
+ {0x256c, 0xce} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0xdf} /* half block */,
+ {0x2584, 0xdc} /* half block */,
+ {0x2588, 0xdb} /* block */,
+ {0x258c, 0xdd} /* half block */,
+ {0x2590, 0xde} /* half block */,
+ {0x2591, 0xb0} /* shade */,
+ {0x2592, 0xb1} /* shade */,
+ {0x2593, 0xb2} /* shade */,
+ {0x25a0, 0xfe} /* square */
+};
+
+/*
+#define cet_ucs4_to_keybcs2_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_keybcs2_extra[cet_ucs4_to_keybcs2_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_keybcs2 = /* defined in cet.h */
+{
+ cet_cs_name_keybcs2, /* name of character set */
+ cet_cs_alias_keybcs2, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_keybcs2, /* char to UCS-4 value table */
+ cet_ucs4_ofs_keybcs2, /* first non standard character */
+ cet_ucs4_cnt_keybcs2, /* number of values in table */
+
+ cet_ucs4_to_keybcs2_links, /* UCS-4 to char links */
+ cet_ucs4_to_keybcs2_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int keybcs2_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x010c, 0x00fc, 0x00e9, 0x010f, 0x00e4, 0x010e, 0x0164, 0x010d,
+ 0x011b, 0x011a, 0x0139, 0x00cd, 0x013e, 0x013a, 0x00c4, 0x00c1,
+ 0x00c9, 0x017e, 0x017d, 0x00f4, 0x00f6, 0x00d3, 0x016f, 0x00da,
+ 0x00fd, 0x00d6, 0x00dc, 0x0160, 0x013d, 0x00dd, 0x0158, 0x0165,
+ 0x00e1, 0x00ed, 0x00f3, 0x00fa, 0x0148, 0x0147, 0x016e, 0x00d4,
+ 0x0161, 0x0159, 0x0155, 0x0154, 0x00bc, 0x00a7, 0x00ab, 0x00bb,
+ 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, 0x2562, 0x2556,
+ 0x2555, 0x2563, 0x2551, 0x2557, 0x255d, 0x255c, 0x255b, 0x2510,
+ 0x2514, 0x2534, 0x252c, 0x251c, 0x2500, 0x253c, 0x255e, 0x255f,
+ 0x255a, 0x2554, 0x2569, 0x2566, 0x2560, 0x2550, 0x256c, 0x2567,
+ 0x2568, 0x2564, 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256b,
+ 0x256a, 0x2518, 0x250c, 0x2588, 0x2584, 0x258c, 0x2590, 0x2580,
+ 0x03b1, 0x03b2, 0x0393, 0x03c0, 0x03a3, 0x03c3, 0x03bc, 0x03c4,
+ 0x03a6, 0x0398, 0x03a9, 0x03b4, 0x221e, 0x2205, 0x03b5, 0x2229,
+ 0x2261, 0x00b1, 0x2265, 0x2264, 0x2320, 0x2321, 0x00f7, 0x2248,
+ 0x2218, 0x00b7, 0x2219, 0x221a, 0x207f, 0x00b2, 0x25a0, 0x00a0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "KOI8-R" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef koi8_r_h
+#define koi8_r_h
+
+#define cet_cs_name_koi8_r "KOI8-R"
+
+const char *cet_cs_alias_koi8_r[] =
+{
+ "KOI8-R", "csKOI8R", NULL
+};
+
+#define cet_ucs4_ofs_koi8_r 128
+#define cet_ucs4_cnt_koi8_r 128
+
+const int cet_ucs4_map_koi8_r[cet_ucs4_cnt_koi8_r] =
+{
+ 0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+ 0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
+ 0x2591, 0x2592, 0x2593, 0x2320, 0x25a0, 0x2022, 0x221a, 0x2248,
+ 0x2264, 0x2265, 0x00a0, 0x2321, 0x00b0, 0x00b2, 0x00b7, 0x00f7,
+ 0x2550, 0x2551, 0x2552, 0x0451, 0x2553, 0x2554, 0x2555, 0x2556,
+ 0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x255c, 0x255d, 0x255e,
+ 0x255f, 0x2560, 0x2561, 0x0401, 0x2562, 0x2563, 0x2564, 0x2565,
+ 0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x256b, 0x256c, 0x00a9,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+ 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a
+};
+
+#define cet_ucs4_to_koi8_r_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_koi8_r_links[cet_ucs4_to_koi8_r_ct] =
+{
+ {0x00a0, 0x9a} /* space */,
+ {0x00a9, 0xbf} /* sign */,
+ {0x00b0, 0x9c} /* sign */,
+ {0x00b2, 0x9d} /* two */,
+ {0x00b7, 0x9e} /* dot */,
+ {0x00f7, 0x9f} /* sign */,
+ {0x0401, 0xb3} /* capital letter io */,
+ {0x0410, 0xe1} /* capital letter a */,
+ {0x0411, 0xe2} /* capital letter be */,
+ {0x0412, 0xf7} /* capital letter ve */,
+ {0x0413, 0xe7} /* capital letter ghe */,
+ {0x0414, 0xe4} /* capital letter de */,
+ {0x0415, 0xe5} /* capital letter ie */,
+ {0x0416, 0xf6} /* capital letter zhe */,
+ {0x0417, 0xfa} /* capital letter ze */,
+ {0x0418, 0xe9} /* capital letter i */,
+ {0x0419, 0xea} /* capital letter short i */,
+ {0x041a, 0xeb} /* capital letter ka */,
+ {0x041b, 0xec} /* capital letter el */,
+ {0x041c, 0xed} /* capital letter em */,
+ {0x041d, 0xee} /* capital letter en */,
+ {0x041e, 0xef} /* capital letter o */,
+ {0x041f, 0xf0} /* capital letter pe */,
+ {0x0420, 0xf2} /* capital letter er */,
+ {0x0421, 0xf3} /* capital letter es */,
+ {0x0422, 0xf4} /* capital letter te */,
+ {0x0423, 0xf5} /* capital letter u */,
+ {0x0424, 0xe6} /* capital letter ef */,
+ {0x0425, 0xe8} /* capital letter ha */,
+ {0x0426, 0xe3} /* capital letter tse */,
+ {0x0427, 0xfe} /* capital letter che */,
+ {0x0428, 0xfb} /* capital letter sha */,
+ {0x0429, 0xfd} /* capital letter shcha */,
+ {0x042a, 0xff} /* capital letter hard sign */,
+ {0x042b, 0xf9} /* capital letter yeru */,
+ {0x042c, 0xf8} /* capital letter soft sign */,
+ {0x042d, 0xfc} /* capital letter e */,
+ {0x042e, 0xe0} /* capital letter yu */,
+ {0x042f, 0xf1} /* capital letter ya */,
+ {0x0430, 0xc1} /* small letter a */,
+ {0x0431, 0xc2} /* small letter be */,
+ {0x0432, 0xd7} /* small letter ve */,
+ {0x0433, 0xc7} /* small letter ghe */,
+ {0x0434, 0xc4} /* small letter de */,
+ {0x0435, 0xc5} /* small letter ie */,
+ {0x0436, 0xd6} /* small letter zhe */,
+ {0x0437, 0xda} /* small letter ze */,
+ {0x0438, 0xc9} /* small letter i */,
+ {0x0439, 0xca} /* small letter short i */,
+ {0x043a, 0xcb} /* small letter ka */,
+ {0x043b, 0xcc} /* small letter el */,
+ {0x043c, 0xcd} /* small letter em */,
+ {0x043d, 0xce} /* small letter en */,
+ {0x043e, 0xcf} /* small letter o */,
+ {0x043f, 0xd0} /* small letter pe */,
+ {0x0440, 0xd2} /* small letter er */,
+ {0x0441, 0xd3} /* small letter es */,
+ {0x0442, 0xd4} /* small letter te */,
+ {0x0443, 0xd5} /* small letter u */,
+ {0x0444, 0xc6} /* small letter ef */,
+ {0x0445, 0xc8} /* small letter ha */,
+ {0x0446, 0xc3} /* small letter tse */,
+ {0x0447, 0xde} /* small letter che */,
+ {0x0448, 0xdb} /* small letter sha */,
+ {0x0449, 0xdd} /* small letter shcha */,
+ {0x044a, 0xdf} /* small letter hard sign */,
+ {0x044b, 0xd9} /* small letter yeru */,
+ {0x044c, 0xd8} /* small letter soft sign */,
+ {0x044d, 0xdc} /* small letter e */,
+ {0x044e, 0xc0} /* small letter yu */,
+ {0x044f, 0xd1} /* small letter ya */,
+ {0x0451, 0xa3} /* small letter io */,
+ {0x2022, 0x95} /* puce */,
+ {0x221a, 0x96} /* root */,
+ {0x2248, 0x97} /* equal to */,
+ {0x2264, 0x98} /* or equal to */,
+ {0x2265, 0x99} /* or equal to */,
+ {0x2320, 0x93} /* half integral */,
+ {0x2321, 0x9b} /* half integral */,
+ {0x2500, 0x80} /* drawings light horizontal */,
+ {0x2502, 0x81} /* drawings light vertical */,
+ {0x250c, 0x82} /* drawings light down and right */,
+ {0x2510, 0x83} /* drawings light down and left */,
+ {0x2514, 0x84} /* drawings light up and right */,
+ {0x2518, 0x85} /* drawings light up and left */,
+ {0x251c, 0x86} /* drawings light vertical and right */,
+ {0x2524, 0x87} /* drawings light vertical and left */,
+ {0x252c, 0x88} /* drawings light down and horizontal */,
+ {0x2534, 0x89} /* drawings light up and horizontal */,
+ {0x253c, 0x8a} /* drawings light vertical and horizontal */,
+ {0x2550, 0xa0} /* drawings heavy horizontal */,
+ {0x2551, 0xa1} /* drawings heavy vertical */,
+ {0x2552, 0xa2} /* drawings down light and right heavy */,
+ {0x2553, 0xa4} /* drawings down heavy and right light */,
+ {0x2554, 0xa5} /* drawings heavy down and right */,
+ {0x2555, 0xa6} /* drawings down light and left heavy */,
+ {0x2556, 0xa7} /* drawings down heavy and left light */,
+ {0x2557, 0xa8} /* drawings heavy down and left */,
+ {0x2558, 0xa9} /* drawings up light and right heavy */,
+ {0x2559, 0xaa} /* drawings up heavy and right light */,
+ {0x255a, 0xab} /* drawings heavy up and right */,
+ {0x255b, 0xac} /* drawings up light and left heavy */,
+ {0x255c, 0xad} /* drawings up heavy and left light */,
+ {0x255d, 0xae} /* drawings heavy up and left */,
+ {0x255e, 0xaf} /* drawings vertical light and right heavy */,
+ {0x255f, 0xb0} /* drawings vertical heavy and right light */,
+ {0x2560, 0xb1} /* drawings heavy vertical and right */,
+ {0x2561, 0xb2} /* drawings vertical light and left heavy */,
+ {0x2562, 0xb4} /* drawings vertical heavy and left light */,
+ {0x2563, 0xb5} /* drawings heavy vertical and left */,
+ {0x2564, 0xb6} /* drawings down light and horizontal heavy */,
+ {0x2565, 0xb7} /* drawings down heavy and horizontal light */,
+ {0x2566, 0xb8} /* drawings heavy down and horizontal */,
+ {0x2567, 0xb9} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xba} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xbb} /* drawings heavy up and horizontal */,
+ {0x256a, 0xbc} /* drawings vertical light and horizontal heavy */,
+ {0x256b, 0xbd} /* drawings vertical heavy and horizontal light */,
+ {0x256c, 0xbe} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0x8b} /* half block */,
+ {0x2584, 0x8c} /* half block */,
+ {0x2588, 0x8d} /* block */,
+ {0x258c, 0x8e} /* half block */,
+ {0x2590, 0x8f} /* half block */,
+ {0x2591, 0x90} /* shade */,
+ {0x2592, 0x91} /* shade */,
+ {0x2593, 0x92} /* shade */,
+ {0x25a0, 0x94} /* square */
+};
+
+/*
+#define cet_ucs4_to_koi8_r_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_koi8_r_extra[cet_ucs4_to_koi8_r_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_koi8_r = /* defined in cet.h */
+{
+ cet_cs_name_koi8_r, /* name of character set */
+ cet_cs_alias_koi8_r, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_koi8_r, /* char to UCS-4 value table */
+ cet_ucs4_ofs_koi8_r, /* first non standard character */
+ cet_ucs4_cnt_koi8_r, /* number of values in table */
+
+ cet_ucs4_to_koi8_r_links, /* UCS-4 to char links */
+ cet_ucs4_to_koi8_r_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int koi8_r_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+ 0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
+ 0x2591, 0x2592, 0x2593, 0x2320, 0x25a0, 0x2022, 0x221a, 0x2248,
+ 0x2264, 0x2265, 0x00a0, 0x2321, 0x00b0, 0x00b2, 0x00b7, 0x00f7,
+ 0x2550, 0x2551, 0x2552, 0x0451, 0x2553, 0x2554, 0x2555, 0x2556,
+ 0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x255c, 0x255d, 0x255e,
+ 0x255f, 0x2560, 0x2561, 0x0401, 0x2562, 0x2563, 0x2564, 0x2565,
+ 0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x256b, 0x256c, 0x00a9,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+ 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "KOI8-RU" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef koi8_ru_h
+#define koi8_ru_h
+
+#define cet_cs_name_koi8_ru "KOI8-RU"
+
+const char *cet_cs_alias_koi8_ru[] =
+{
+ "KOI8-RU", NULL
+};
+
+#define cet_ucs4_ofs_koi8_ru 128
+#define cet_ucs4_cnt_koi8_ru 128
+
+const int cet_ucs4_map_koi8_ru[cet_ucs4_cnt_koi8_ru] =
+{
+ 0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+ 0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
+ 0x2591, 0x2592, 0x2593, 0x201c, 0x25a0, 0x2022, 0x201d, 0x2014,
+ 0x2116, 0x2122, 0x00a0, 0x00bb, 0x00ae, 0x00ab, 0x00b7, 0x00a4,
+ 0x2550, 0x2551, 0x2552, 0x0451, 0x0454, 0x2554, 0x0456, 0x0457,
+ 0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x0491, 0x045e, 0x255e,
+ 0x255f, 0x2560, 0x2561, 0x0401, 0x0404, 0x2563, 0x0406, 0x0407,
+ 0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x0490, 0x040e, 0x00a9,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+ 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a
+};
+
+#define cet_ucs4_to_koi8_ru_ct 128
+
+const cet_ucs4_link_t cet_ucs4_to_koi8_ru_links[cet_ucs4_to_koi8_ru_ct] =
+{
+ {0x00a0, 0x9a} /* space */,
+ {0x00a4, 0x9f} /* sign */,
+ {0x00a9, 0xbf} /* sign */,
+ {0x00ab, 0x9d} /* double angle quotation mark */,
+ {0x00ae, 0x9c} /* sign */,
+ {0x00b7, 0x9e} /* dot */,
+ {0x00bb, 0x9b} /* double angle quotation mark */,
+ {0x0401, 0xb3} /* capital letter io */,
+ {0x0404, 0xb4} /* capital letter ukrainian ie */,
+ {0x0406, 0xb6} /* capital letter byelorussian-ukrainian i */,
+ {0x0407, 0xb7} /* capital letter yi (ukrainian) */,
+ {0x040e, 0xbe} /* capital letter short u (byelorussian) */,
+ {0x0410, 0xe1} /* capital letter a */,
+ {0x0411, 0xe2} /* capital letter be */,
+ {0x0412, 0xf7} /* capital letter ve */,
+ {0x0413, 0xe7} /* capital letter ghe */,
+ {0x0414, 0xe4} /* capital letter de */,
+ {0x0415, 0xe5} /* capital letter ie */,
+ {0x0416, 0xf6} /* capital letter zhe */,
+ {0x0417, 0xfa} /* capital letter ze */,
+ {0x0418, 0xe9} /* capital letter i */,
+ {0x0419, 0xea} /* capital letter short i */,
+ {0x041a, 0xeb} /* capital letter ka */,
+ {0x041b, 0xec} /* capital letter el */,
+ {0x041c, 0xed} /* capital letter em */,
+ {0x041d, 0xee} /* capital letter en */,
+ {0x041e, 0xef} /* capital letter o */,
+ {0x041f, 0xf0} /* capital letter pe */,
+ {0x0420, 0xf2} /* capital letter er */,
+ {0x0421, 0xf3} /* capital letter es */,
+ {0x0422, 0xf4} /* capital letter te */,
+ {0x0423, 0xf5} /* capital letter u */,
+ {0x0424, 0xe6} /* capital letter ef */,
+ {0x0425, 0xe8} /* capital letter ha */,
+ {0x0426, 0xe3} /* capital letter tse */,
+ {0x0427, 0xfe} /* capital letter che */,
+ {0x0428, 0xfb} /* capital letter sha */,
+ {0x0429, 0xfd} /* capital letter shcha */,
+ {0x042a, 0xff} /* capital letter hard sign */,
+ {0x042b, 0xf9} /* capital letter yeru */,
+ {0x042c, 0xf8} /* capital letter soft sign */,
+ {0x042d, 0xfc} /* capital letter e */,
+ {0x042e, 0xe0} /* capital letter yu */,
+ {0x042f, 0xf1} /* capital letter ya */,
+ {0x0430, 0xc1} /* small letter a */,
+ {0x0431, 0xc2} /* small letter be */,
+ {0x0432, 0xd7} /* small letter ve */,
+ {0x0433, 0xc7} /* small letter ghe */,
+ {0x0434, 0xc4} /* small letter de */,
+ {0x0435, 0xc5} /* small letter ie */,
+ {0x0436, 0xd6} /* small letter zhe */,
+ {0x0437, 0xda} /* small letter ze */,
+ {0x0438, 0xc9} /* small letter i */,
+ {0x0439, 0xca} /* small letter short i */,
+ {0x043a, 0xcb} /* small letter ka */,
+ {0x043b, 0xcc} /* small letter el */,
+ {0x043c, 0xcd} /* small letter em */,
+ {0x043d, 0xce} /* small letter en */,
+ {0x043e, 0xcf} /* small letter o */,
+ {0x043f, 0xd0} /* small letter pe */,
+ {0x0440, 0xd2} /* small letter er */,
+ {0x0441, 0xd3} /* small letter es */,
+ {0x0442, 0xd4} /* small letter te */,
+ {0x0443, 0xd5} /* small letter u */,
+ {0x0444, 0xc6} /* small letter ef */,
+ {0x0445, 0xc8} /* small letter ha */,
+ {0x0446, 0xc3} /* small letter tse */,
+ {0x0447, 0xde} /* small letter che */,
+ {0x0448, 0xdb} /* small letter sha */,
+ {0x0449, 0xdd} /* small letter shcha */,
+ {0x044a, 0xdf} /* small letter hard sign */,
+ {0x044b, 0xd9} /* small letter yeru */,
+ {0x044c, 0xd8} /* small letter soft sign */,
+ {0x044d, 0xdc} /* small letter e */,
+ {0x044e, 0xc0} /* small letter yu */,
+ {0x044f, 0xd1} /* small letter ya */,
+ {0x0451, 0xa3} /* small letter io */,
+ {0x0454, 0xa4} /* small letter ukrainian ie */,
+ {0x0456, 0xa6} /* small letter byelorussian-ukrainian i */,
+ {0x0457, 0xa7} /* small letter yi (ukrainian) */,
+ {0x045e, 0xae} /* small letter short u (byelorussian) */,
+ {0x0490, 0xbd} /* capital letter ghe with upturn */,
+ {0x0491, 0xad} /* small letter ghe with upturn */,
+ {0x2014, 0x97} /* dash */,
+ {0x201c, 0x93} /* double quotation mark */,
+ {0x201d, 0x96} /* double quotation mark */,
+ {0x2022, 0x95} /* puce */,
+ {0x2116, 0x98} /* sign */,
+ {0x2122, 0x99} /* mark sign */,
+ {0x2500, 0x80} /* drawings light horizontal */,
+ {0x2502, 0x81} /* drawings light vertical */,
+ {0x250c, 0x82} /* drawings light down and right */,
+ {0x2510, 0x83} /* drawings light down and left */,
+ {0x2514, 0x84} /* drawings light up and right */,
+ {0x2518, 0x85} /* drawings light up and left */,
+ {0x251c, 0x86} /* drawings light vertical and right */,
+ {0x2524, 0x87} /* drawings light vertical and left */,
+ {0x252c, 0x88} /* drawings light down and horizontal */,
+ {0x2534, 0x89} /* drawings light up and horizontal */,
+ {0x253c, 0x8a} /* drawings light vertical and horizontal */,
+ {0x2550, 0xa0} /* drawings heavy horizontal */,
+ {0x2551, 0xa1} /* drawings heavy vertical */,
+ {0x2552, 0xa2} /* drawings down light and right heavy */,
+ {0x2554, 0xa5} /* drawings heavy down and right */,
+ {0x2557, 0xa8} /* drawings heavy down and left */,
+ {0x2558, 0xa9} /* drawings up light and right heavy */,
+ {0x2559, 0xaa} /* drawings up heavy and right light */,
+ {0x255a, 0xab} /* drawings heavy up and right */,
+ {0x255b, 0xac} /* drawings up light and left heavy */,
+ {0x255e, 0xaf} /* drawings vertical light and right heavy */,
+ {0x255f, 0xb0} /* drawings vertical heavy and right light */,
+ {0x2560, 0xb1} /* drawings heavy vertical and right */,
+ {0x2561, 0xb2} /* drawings vertical light and left heavy */,
+ {0x2563, 0xb5} /* drawings heavy vertical and left */,
+ {0x2566, 0xb8} /* drawings heavy down and horizontal */,
+ {0x2567, 0xb9} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xba} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xbb} /* drawings heavy up and horizontal */,
+ {0x256a, 0xbc} /* drawings vertical light and horizontal heavy */,
+ {0x2580, 0x8b} /* half block */,
+ {0x2584, 0x8c} /* half block */,
+ {0x2588, 0x8d} /* block */,
+ {0x258c, 0x8e} /* half block */,
+ {0x2590, 0x8f} /* half block */,
+ {0x2591, 0x90} /* shade */,
+ {0x2592, 0x91} /* shade */,
+ {0x2593, 0x92} /* shade */,
+ {0x25a0, 0x94} /* square */
+};
+
+/*
+#define cet_ucs4_to_koi8_ru_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_koi8_ru_extra[cet_ucs4_to_koi8_ru_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_koi8_ru = /* defined in cet.h */
+{
+ cet_cs_name_koi8_ru, /* name of character set */
+ cet_cs_alias_koi8_ru, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_koi8_ru, /* char to UCS-4 value table */
+ cet_ucs4_ofs_koi8_ru, /* first non standard character */
+ cet_ucs4_cnt_koi8_ru, /* number of values in table */
+
+ cet_ucs4_to_koi8_ru_links, /* UCS-4 to char links */
+ cet_ucs4_to_koi8_ru_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int koi8_ru_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+ 0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
+ 0x2591, 0x2592, 0x2593, 0x201c, 0x25a0, 0x2022, 0x201d, 0x2014,
+ 0x2116, 0x2122, 0x00a0, 0x00bb, 0x00ae, 0x00ab, 0x00b7, 0x00a4,
+ 0x2550, 0x2551, 0x2552, 0x0451, 0x0454, 0x2554, 0x0456, 0x0457,
+ 0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x0491, 0x045e, 0x255e,
+ 0x255f, 0x2560, 0x2561, 0x0401, 0x0404, 0x2563, 0x0406, 0x0407,
+ 0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x0490, 0x040e, 0x00a9,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+ 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x042a
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "KOI8-U" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef koi8_u_h
+#define koi8_u_h
+
+#define cet_cs_name_koi8_u "KOI8-U"
+
+const char *cet_cs_alias_koi8_u[] =
+{
+ "KOI8-U", NULL
+};
+
+#define cet_ucs4_ofs_koi8_u 128
+#define cet_ucs4_cnt_koi8_u 112
+
+const int cet_ucs4_map_koi8_u[cet_ucs4_cnt_koi8_u] =
+{
+ 0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+ 0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
+ 0x2591, 0x2592, 0x2593, 0x2320, 0x25a0, 0x2219, 0x221a, 0x2248,
+ 0x2264, 0x2265, 0x00a0, 0x2321, 0x00b0, 0x00b2, 0x00b7, 0x00f7,
+ 0x2550, 0x2551, 0x2552, 0x0451, 0x0454, 0x2554, 0x0456, 0x0457,
+ 0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x0491, 0x255d, 0x255e,
+ 0x255f, 0x2560, 0x2561, 0x0401, 0x0404, 0x2563, 0x0406, 0x0407,
+ 0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x0490, 0x256c, 0x00a9,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e
+};
+
+#define cet_ucs4_to_koi8_u_ct 112
+
+const cet_ucs4_link_t cet_ucs4_to_koi8_u_links[cet_ucs4_to_koi8_u_ct] =
+{
+ {0x00a0, 0x9a} /* space */,
+ {0x00a9, 0xbf} /* sign */,
+ {0x00b0, 0x9c} /* sign */,
+ {0x00b2, 0x9d} /* two */,
+ {0x00b7, 0x9e} /* dot */,
+ {0x00f7, 0x9f} /* sign */,
+ {0x0401, 0xb3} /* capital letter io */,
+ {0x0404, 0xb4} /* capital letter ukrainian ie */,
+ {0x0406, 0xb6} /* capital letter byelorussian-ukrainian i */,
+ {0x0407, 0xb7} /* capital letter yi (ukrainian) */,
+ {0x0410, 0xe1} /* capital letter a */,
+ {0x0411, 0xe2} /* capital letter be */,
+ {0x0413, 0xe7} /* capital letter ghe */,
+ {0x0414, 0xe4} /* capital letter de */,
+ {0x0415, 0xe5} /* capital letter ie */,
+ {0x0418, 0xe9} /* capital letter i */,
+ {0x0419, 0xea} /* capital letter short i */,
+ {0x041a, 0xeb} /* capital letter ka */,
+ {0x041b, 0xec} /* capital letter el */,
+ {0x041c, 0xed} /* capital letter em */,
+ {0x041d, 0xee} /* capital letter en */,
+ {0x041e, 0xef} /* capital letter o */,
+ {0x0424, 0xe6} /* capital letter ef */,
+ {0x0425, 0xe8} /* capital letter ha */,
+ {0x0426, 0xe3} /* capital letter tse */,
+ {0x042e, 0xe0} /* capital letter yu */,
+ {0x0430, 0xc1} /* small letter a */,
+ {0x0431, 0xc2} /* small letter be */,
+ {0x0432, 0xd7} /* small letter ve */,
+ {0x0433, 0xc7} /* small letter ghe */,
+ {0x0434, 0xc4} /* small letter de */,
+ {0x0435, 0xc5} /* small letter ie */,
+ {0x0436, 0xd6} /* small letter zhe */,
+ {0x0437, 0xda} /* small letter ze */,
+ {0x0438, 0xc9} /* small letter i */,
+ {0x0439, 0xca} /* small letter short i */,
+ {0x043a, 0xcb} /* small letter ka */,
+ {0x043b, 0xcc} /* small letter el */,
+ {0x043c, 0xcd} /* small letter em */,
+ {0x043d, 0xce} /* small letter en */,
+ {0x043e, 0xcf} /* small letter o */,
+ {0x043f, 0xd0} /* small letter pe */,
+ {0x0440, 0xd2} /* small letter er */,
+ {0x0441, 0xd3} /* small letter es */,
+ {0x0442, 0xd4} /* small letter te */,
+ {0x0443, 0xd5} /* small letter u */,
+ {0x0444, 0xc6} /* small letter ef */,
+ {0x0445, 0xc8} /* small letter ha */,
+ {0x0446, 0xc3} /* small letter tse */,
+ {0x0447, 0xde} /* small letter che */,
+ {0x0448, 0xdb} /* small letter sha */,
+ {0x0449, 0xdd} /* small letter shcha */,
+ {0x044a, 0xdf} /* small letter hard sign */,
+ {0x044b, 0xd9} /* small letter yeru */,
+ {0x044c, 0xd8} /* small letter soft sign */,
+ {0x044d, 0xdc} /* small letter e */,
+ {0x044e, 0xc0} /* small letter yu */,
+ {0x044f, 0xd1} /* small letter ya */,
+ {0x0451, 0xa3} /* small letter io */,
+ {0x0454, 0xa4} /* small letter ukrainian ie */,
+ {0x0456, 0xa6} /* small letter byelorussian-ukrainian i */,
+ {0x0457, 0xa7} /* small letter yi (ukrainian) */,
+ {0x0490, 0xbd} /* capital letter ghe with upturn */,
+ {0x0491, 0xad} /* small letter ghe with upturn */,
+ {0x2219, 0x95} /* operator */,
+ {0x221a, 0x96} /* root */,
+ {0x2248, 0x97} /* equal to */,
+ {0x2264, 0x98} /* or equal to */,
+ {0x2265, 0x99} /* or equal to */,
+ {0x2320, 0x93} /* half integral */,
+ {0x2321, 0x9b} /* half integral */,
+ {0x2500, 0x80} /* drawings light horizontal */,
+ {0x2502, 0x81} /* drawings light vertical */,
+ {0x250c, 0x82} /* drawings light down and right */,
+ {0x2510, 0x83} /* drawings light down and left */,
+ {0x2514, 0x84} /* drawings light up and right */,
+ {0x2518, 0x85} /* drawings light up and left */,
+ {0x251c, 0x86} /* drawings light vertical and right */,
+ {0x2524, 0x87} /* drawings light vertical and left */,
+ {0x252c, 0x88} /* drawings light down and horizontal */,
+ {0x2534, 0x89} /* drawings light up and horizontal */,
+ {0x253c, 0x8a} /* drawings light vertical and horizontal */,
+ {0x2550, 0xa0} /* drawings heavy horizontal */,
+ {0x2551, 0xa1} /* drawings heavy vertical */,
+ {0x2552, 0xa2} /* drawings down light and right heavy */,
+ {0x2554, 0xa5} /* drawings heavy down and right */,
+ {0x2557, 0xa8} /* drawings heavy down and left */,
+ {0x2558, 0xa9} /* drawings up light and right heavy */,
+ {0x2559, 0xaa} /* drawings up heavy and right light */,
+ {0x255a, 0xab} /* drawings heavy up and right */,
+ {0x255b, 0xac} /* drawings up light and left heavy */,
+ {0x255d, 0xae} /* drawings heavy up and left */,
+ {0x255e, 0xaf} /* drawings vertical light and right heavy */,
+ {0x255f, 0xb0} /* drawings vertical heavy and right light */,
+ {0x2560, 0xb1} /* drawings heavy vertical and right */,
+ {0x2561, 0xb2} /* drawings vertical light and left heavy */,
+ {0x2563, 0xb5} /* drawings heavy vertical and left */,
+ {0x2566, 0xb8} /* drawings heavy down and horizontal */,
+ {0x2567, 0xb9} /* drawings up light and horizontal heavy */,
+ {0x2568, 0xba} /* drawings up heavy and horizontal light */,
+ {0x2569, 0xbb} /* drawings heavy up and horizontal */,
+ {0x256a, 0xbc} /* drawings vertical light and horizontal heavy */,
+ {0x256c, 0xbe} /* drawings heavy vertical and horizontal */,
+ {0x2580, 0x8b} /* half block */,
+ {0x2584, 0x8c} /* half block */,
+ {0x2588, 0x8d} /* block */,
+ {0x258c, 0x8e} /* half block */,
+ {0x2590, 0x8f} /* half block */,
+ {0x2591, 0x90} /* shade */,
+ {0x2592, 0x91} /* shade */,
+ {0x2593, 0x92} /* shade */,
+ {0x25a0, 0x94} /* square */
+};
+
+/*
+#define cet_ucs4_to_koi8_u_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_koi8_u_extra[cet_ucs4_to_koi8_u_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_koi8_u = /* defined in cet.h */
+{
+ cet_cs_name_koi8_u, /* name of character set */
+ cet_cs_alias_koi8_u, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_koi8_u, /* char to UCS-4 value table */
+ cet_ucs4_ofs_koi8_u, /* first non standard character */
+ cet_ucs4_cnt_koi8_u, /* number of values in table */
+
+ cet_ucs4_to_koi8_u_links, /* UCS-4 to char links */
+ cet_ucs4_to_koi8_u_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int koi8_u_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x2500, 0x2502, 0x250c, 0x2510, 0x2514, 0x2518, 0x251c, 0x2524,
+ 0x252c, 0x2534, 0x253c, 0x2580, 0x2584, 0x2588, 0x258c, 0x2590,
+ 0x2591, 0x2592, 0x2593, 0x2320, 0x25a0, 0x2219, 0x221a, 0x2248,
+ 0x2264, 0x2265, 0x00a0, 0x2321, 0x00b0, 0x00b2, 0x00b7, 0x00f7,
+ 0x2550, 0x2551, 0x2552, 0x0451, 0x0454, 0x2554, 0x0456, 0x0457,
+ 0x2557, 0x2558, 0x2559, 0x255a, 0x255b, 0x0491, 0x255d, 0x255e,
+ 0x255f, 0x2560, 0x2561, 0x0401, 0x0404, 0x2563, 0x0406, 0x0407,
+ 0x2566, 0x2567, 0x2568, 0x2569, 0x256a, 0x0490, 0x256c, 0x00a9,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "KOI-7" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef koi_7_h
+#define koi_7_h
+
+#define cet_cs_name_koi_7 "KOI-7"
+
+const char *cet_cs_alias_koi_7[] =
+{
+ "KOI-7", NULL
+};
+
+#define cet_ucs4_ofs_koi_7 36
+#define cet_ucs4_cnt_koi_7 92
+
+const int cet_ucs4_map_koi_7[cet_ucs4_cnt_koi_7] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b,
+ 0x005c, 0x005d, 0x005e, 0x005f, 0x042e, 0x0410, 0x0411, 0x0426,
+ 0x0414, 0x0415, 0x0424, 0x0413, 0x0425, 0x0418, 0x0419, 0x041a,
+ 0x041b, 0x041c, 0x041d, 0x041e, 0x041f, 0x042f, 0x0420, 0x0421,
+ 0x0422, 0x0423, 0x0416, 0x0412, 0x042c, 0x042b, 0x0417, 0x0428,
+ 0x042d, 0x0429, 0x0427, 0x007f
+};
+
+#define cet_ucs4_to_koi_7_ct 32
+
+const cet_ucs4_link_t cet_ucs4_to_koi_7_links[cet_ucs4_to_koi_7_ct] =
+{
+ {0x00a4, 0x24} /* sign */,
+ {0x0410, 0x61} /* capital letter a */,
+ {0x0411, 0x62} /* capital letter be */,
+ {0x0412, 0x77} /* capital letter ve */,
+ {0x0413, 0x67} /* capital letter ghe */,
+ {0x0414, 0x64} /* capital letter de */,
+ {0x0415, 0x65} /* capital letter ie */,
+ {0x0416, 0x76} /* capital letter zhe */,
+ {0x0417, 0x7a} /* capital letter ze */,
+ {0x0418, 0x69} /* capital letter i */,
+ {0x0419, 0x6a} /* capital letter short i */,
+ {0x041a, 0x6b} /* capital letter ka */,
+ {0x041b, 0x6c} /* capital letter el */,
+ {0x041c, 0x6d} /* capital letter em */,
+ {0x041d, 0x6e} /* capital letter en */,
+ {0x041e, 0x6f} /* capital letter o */,
+ {0x041f, 0x70} /* capital letter pe */,
+ {0x0420, 0x72} /* capital letter er */,
+ {0x0421, 0x73} /* capital letter es */,
+ {0x0422, 0x74} /* capital letter te */,
+ {0x0423, 0x75} /* capital letter u */,
+ {0x0424, 0x66} /* capital letter ef */,
+ {0x0425, 0x68} /* capital letter ha */,
+ {0x0426, 0x63} /* capital letter tse */,
+ {0x0427, 0x7e} /* capital letter che */,
+ {0x0428, 0x7b} /* capital letter sha */,
+ {0x0429, 0x7d} /* capital letter shcha */,
+ {0x042b, 0x79} /* capital letter yeru */,
+ {0x042c, 0x78} /* capital letter soft sign */,
+ {0x042d, 0x7c} /* capital letter e */,
+ {0x042e, 0x60} /* capital letter yu */,
+ {0x042f, 0x71} /* capital letter ya */
+};
+
+/*
+#define cet_ucs4_to_koi_7_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_koi_7_extra[cet_ucs4_to_koi_7_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_koi_7 = /* defined in cet.h */
+{
+ cet_cs_name_koi_7, /* name of character set */
+ cet_cs_alias_koi_7, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_koi_7, /* char to UCS-4 value table */
+ cet_ucs4_ofs_koi_7, /* first non standard character */
+ cet_ucs4_cnt_koi_7, /* number of values in table */
+
+ cet_ucs4_to_koi_7_links, /* UCS-4 to char links */
+ cet_ucs4_to_koi_7_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int koi_7_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+ 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "KOI-8" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef koi_8_h
+#define koi_8_h
+
+#define cet_cs_name_koi_8 "KOI-8"
+
+const char *cet_cs_alias_koi_8[] =
+{
+ "KOI-8", "GOST_19768-74", NULL
+};
+
+#define cet_ucs4_ofs_koi_8 128
+#define cet_ucs4_cnt_koi_8 127
+
+const int cet_ucs4_map_koi_8[cet_ucs4_cnt_koi_8] =
+{
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+ 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427
+};
+
+#define cet_ucs4_to_koi_8_ct 63
+
+const cet_ucs4_link_t cet_ucs4_to_koi_8_links[cet_ucs4_to_koi_8_ct] =
+{
+ {0x0410, 0xe1} /* capital letter a */,
+ {0x0411, 0xe2} /* capital letter be */,
+ {0x0412, 0xf7} /* capital letter ve */,
+ {0x0413, 0xe7} /* capital letter ghe */,
+ {0x0414, 0xe4} /* capital letter de */,
+ {0x0415, 0xe5} /* capital letter ie */,
+ {0x0416, 0xf6} /* capital letter zhe */,
+ {0x0417, 0xfa} /* capital letter ze */,
+ {0x0418, 0xe9} /* capital letter i */,
+ {0x0419, 0xea} /* capital letter short i */,
+ {0x041a, 0xeb} /* capital letter ka */,
+ {0x041b, 0xec} /* capital letter el */,
+ {0x041c, 0xed} /* capital letter em */,
+ {0x041d, 0xee} /* capital letter en */,
+ {0x041e, 0xef} /* capital letter o */,
+ {0x041f, 0xf0} /* capital letter pe */,
+ {0x0420, 0xf2} /* capital letter er */,
+ {0x0421, 0xf3} /* capital letter es */,
+ {0x0422, 0xf4} /* capital letter te */,
+ {0x0423, 0xf5} /* capital letter u */,
+ {0x0424, 0xe6} /* capital letter ef */,
+ {0x0425, 0xe8} /* capital letter ha */,
+ {0x0426, 0xe3} /* capital letter tse */,
+ {0x0427, 0xfe} /* capital letter che */,
+ {0x0428, 0xfb} /* capital letter sha */,
+ {0x0429, 0xfd} /* capital letter shcha */,
+ {0x042b, 0xf9} /* capital letter yeru */,
+ {0x042c, 0xf8} /* capital letter soft sign */,
+ {0x042d, 0xfc} /* capital letter e */,
+ {0x042e, 0xe0} /* capital letter yu */,
+ {0x042f, 0xf1} /* capital letter ya */,
+ {0x0430, 0xc1} /* small letter a */,
+ {0x0431, 0xc2} /* small letter be */,
+ {0x0432, 0xd7} /* small letter ve */,
+ {0x0433, 0xc7} /* small letter ghe */,
+ {0x0434, 0xc4} /* small letter de */,
+ {0x0435, 0xc5} /* small letter ie */,
+ {0x0436, 0xd6} /* small letter zhe */,
+ {0x0437, 0xda} /* small letter ze */,
+ {0x0438, 0xc9} /* small letter i */,
+ {0x0439, 0xca} /* small letter short i */,
+ {0x043a, 0xcb} /* small letter ka */,
+ {0x043b, 0xcc} /* small letter el */,
+ {0x043c, 0xcd} /* small letter em */,
+ {0x043d, 0xce} /* small letter en */,
+ {0x043e, 0xcf} /* small letter o */,
+ {0x043f, 0xd0} /* small letter pe */,
+ {0x0440, 0xd2} /* small letter er */,
+ {0x0441, 0xd3} /* small letter es */,
+ {0x0442, 0xd4} /* small letter te */,
+ {0x0443, 0xd5} /* small letter u */,
+ {0x0444, 0xc6} /* small letter ef */,
+ {0x0445, 0xc8} /* small letter ha */,
+ {0x0446, 0xc3} /* small letter tse */,
+ {0x0447, 0xde} /* small letter che */,
+ {0x0448, 0xdb} /* small letter sha */,
+ {0x0449, 0xdd} /* small letter shcha */,
+ {0x044a, 0xdf} /* small letter hard sign */,
+ {0x044b, 0xd9} /* small letter yeru */,
+ {0x044c, 0xd8} /* small letter soft sign */,
+ {0x044d, 0xdc} /* small letter e */,
+ {0x044e, 0xc0} /* small letter yu */,
+ {0x044f, 0xd1} /* small letter ya */
+};
+
+/*
+#define cet_ucs4_to_koi_8_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_koi_8_extra[cet_ucs4_to_koi_8_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_koi_8 = /* defined in cet.h */
+{
+ cet_cs_name_koi_8, /* name of character set */
+ cet_cs_alias_koi_8, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_koi_8, /* char to UCS-4 value table */
+ cet_ucs4_ofs_koi_8, /* first non standard character */
+ cet_ucs4_cnt_koi_8, /* number of values in table */
+
+ cet_ucs4_to_koi_8_links, /* UCS-4 to char links */
+ cet_ucs4_to_koi_8_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int koi_8_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x044e, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, 0x0444, 0x0433,
+ 0x0445, 0x0438, 0x0439, 0x043a, 0x043b, 0x043c, 0x043d, 0x043e,
+ 0x043f, 0x044f, 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432,
+ 0x044c, 0x044b, 0x0437, 0x0448, 0x044d, 0x0449, 0x0447, 0x044a,
+ 0x042e, 0x0410, 0x0411, 0x0426, 0x0414, 0x0415, 0x0424, 0x0413,
+ 0x0425, 0x0418, 0x0419, 0x041a, 0x041b, 0x041c, 0x041d, 0x041e,
+ 0x041f, 0x042f, 0x0420, 0x0421, 0x0422, 0x0423, 0x0416, 0x0412,
+ 0x042c, 0x042b, 0x0417, 0x0428, 0x042d, 0x0429, 0x0427, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "KOI-8_CS2" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef koi_8_cs2_h
+#define koi_8_cs2_h
+
+#define cet_cs_name_koi_8_cs2 "KOI-8_CS2"
+
+const char *cet_cs_alias_koi_8_cs2[] =
+{
+ "KOI-8_CS2", NULL
+};
+
+#define cet_ucs4_ofs_koi_8_cs2 36
+#define cet_ucs4_cnt_koi_8_cs2 219
+
+const int cet_ucs4_map_koi_8_cs2[cet_ucs4_cnt_koi_8_cs2] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x005b,
+ 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b,
+ 0x007c, 0x007d, 0x007e, 0x007f, 0x0080, 0x0081, 0x0082, 0x0083,
+ 0x0084, 0x0085, 0x0086, 0x0087, 0x0088, 0x0089, 0x008a, 0x008b,
+ 0x008c, 0x008d, 0x008e, 0x008f, 0x0090, 0x0091, 0x0092, 0x0093,
+ 0x0094, 0x0095, 0x0096, 0x0097, 0x0098, 0x0099, 0x009a, 0x009b,
+ 0x009c, 0x009d, 0x009e, 0x009f, 0x00a0, -1, 0x00b4, -1,
+ 0x007e, -1, 0x02d8, 0x02d9, 0x00a8, -1, 0x02da, 0x00b8,
+ -1, 0x02dd, 0x02db, 0x02c7, 0x00a9, 0x2122, 0x250c, 0x2510,
+ 0x2514, 0x2518, 0x2500, 0x2193, 0x03a9, 0x00a7, 0x03b1, 0x03b3,
+ 0x03b5, 0x03bc, 0x03c0, 0x03c9, 0x00e0, 0x00e1, 0x01ce, 0x010d,
+ 0x010f, 0x011b, 0x0155, -1, 0x00fc, 0x00ed, 0x016f, 0x013a,
+ 0x013e, 0x00f6, 0x0148, 0x00f3, 0x00f4, 0x00e4, 0x0159, 0x0161,
+ 0x0165, 0x00fa, 0x00eb, 0x00e9, 0x0171, 0x00fd, 0x017e, -1,
+ -1, 0x0151, 0x0117, 0x00df, 0x00c0, 0x00c1, 0x01cd, 0x010c,
+ 0x010e, 0x011a, 0x0154, -1, 0x00dc, 0x00cd, 0x016e, 0x0139,
+ 0x013d, 0x00d6, 0x0147, 0x00d3, 0x00d4, 0x00c4, 0x0158, 0x0160,
+ 0x0164, 0x00da, 0x00cb, 0x00c9, 0x0170, 0x00dd, 0x017d, -1,
+ -1, 0x0150, 0x0116
+};
+
+#define cet_ucs4_to_koi_8_cs2_ct 82
+
+const cet_ucs4_link_t cet_ucs4_to_koi_8_cs2_links[cet_ucs4_to_koi_8_cs2_ct] =
+{
+ {0x007e, 0xa4} /* tilde */,
+ {0x00a4, 0x24} /* sign */,
+ {0x00a7, 0xb9} /* sign */,
+ {0x00a9, 0xb0} /* sign */,
+ {0x00b4, 0xa2} /* accent */,
+ {0x00b8, 0xab} /* cedilla */,
+ {0x00c0, 0xe0} /* capital letter a with grave */,
+ {0x00c1, 0xe1} /* capital letter a with acute */,
+ {0x00c4, 0xf1} /* capital letter a with diaeresis */,
+ {0x00c9, 0xf7} /* capital letter e with acute */,
+ {0x00cb, 0xf6} /* capital letter e with diaeresis */,
+ {0x00cd, 0xe9} /* capital letter i with acute */,
+ {0x00d3, 0xef} /* capital letter o with acute */,
+ {0x00d4, 0xf0} /* capital letter o with circumflex */,
+ {0x00d6, 0xed} /* capital letter o with diaeresis */,
+ {0x00da, 0xf5} /* capital letter u with acute */,
+ {0x00dc, 0xe8} /* capital letter u with diaeresis */,
+ {0x00dd, 0xf9} /* capital letter y with acute */,
+ {0x00e0, 0xc0} /* small letter a with grave */,
+ {0x00e1, 0xc1} /* small letter a with acute */,
+ {0x00e4, 0xd1} /* small letter a with diaeresis */,
+ {0x00e9, 0xd7} /* small letter e with acute */,
+ {0x00eb, 0xd6} /* small letter e with diaeresis */,
+ {0x00ed, 0xc9} /* small letter i with acute */,
+ {0x00f3, 0xcf} /* small letter o with acute */,
+ {0x00f4, 0xd0} /* small letter o with circumflex */,
+ {0x00f6, 0xcd} /* small letter o with diaeresis */,
+ {0x00fa, 0xd5} /* small letter u with acute */,
+ {0x00fc, 0xc8} /* small letter u with diaeresis */,
+ {0x00fd, 0xd9} /* small letter y with acute */,
+ {0x010c, 0xe3} /* capital letter c with caron */,
+ {0x010d, 0xc3} /* small letter c with caron */,
+ {0x010e, 0xe4} /* capital letter d with caron */,
+ {0x010f, 0xc4} /* small letter d with caron */,
+ {0x0116, 0xfe} /* capital letter e with dot above */,
+ {0x0117, 0xde} /* small letter e with dot above */,
+ {0x011a, 0xe5} /* capital letter e with caron */,
+ {0x011b, 0xc5} /* small letter e with caron */,
+ {0x0139, 0xeb} /* capital letter l with acute */,
+ {0x013a, 0xcb} /* small letter l with acute */,
+ {0x013d, 0xec} /* capital letter l with caron */,
+ {0x013e, 0xcc} /* small letter l with caron */,
+ {0x0147, 0xee} /* capital letter n with caron */,
+ {0x0148, 0xce} /* small letter n with caron */,
+ {0x0150, 0xfd} /* capital letter o with double acute */,
+ {0x0151, 0xdd} /* small letter o with double acute */,
+ {0x0154, 0xe6} /* capital letter r with acute */,
+ {0x0155, 0xc6} /* small letter r with acute */,
+ {0x0158, 0xf2} /* capital letter r with caron */,
+ {0x0159, 0xd2} /* small letter r with caron */,
+ {0x0160, 0xf3} /* capital letter s with caron */,
+ {0x0161, 0xd3} /* small letter s with caron */,
+ {0x0164, 0xf4} /* capital letter t with caron */,
+ {0x0165, 0xd4} /* small letter t with caron */,
+ {0x016e, 0xea} /* capital letter u with ring above */,
+ {0x016f, 0xca} /* small letter u with ring above */,
+ {0x0170, 0xf8} /* capital letter u with double acute */,
+ {0x0171, 0xd8} /* small letter u with double acute */,
+ {0x017d, 0xfa} /* capital letter z with caron */,
+ {0x017e, 0xda} /* small letter z with caron */,
+ {0x01cd, 0xe2} /* capital letter a with caron */,
+ {0x01ce, 0xc2} /* small letter a with caron */,
+ {0x02c7, 0xaf} /* caron */,
+ {0x02d8, 0xa6} /* breve */,
+ {0x02d9, 0xa7} /* above */,
+ {0x02da, 0xaa} /* above */,
+ {0x02db, 0xae} /* ogonek */,
+ {0x02dd, 0xad} /* acute accent */,
+ {0x03a9, 0xb8} /* capital letter omega */,
+ {0x03b1, 0xba} /* small letter alpha */,
+ {0x03b3, 0xbb} /* small letter gamma */,
+ {0x03b5, 0xbc} /* small letter epsilon */,
+ {0x03bc, 0xbd} /* small letter mu */,
+ {0x03c0, 0xbe} /* small letter pi */,
+ {0x03c9, 0xbf} /* small letter omega */,
+ {0x2122, 0xb1} /* mark sign */,
+ {0x2193, 0xb7} /* arrow */,
+ {0x2500, 0xb6} /* drawings light horizontal */,
+ {0x250c, 0xb2} /* drawings light down and right */,
+ {0x2510, 0xb3} /* drawings light down and left */,
+ {0x2514, 0xb4} /* drawings light up and right */,
+ {0x2518, 0xb5} /* drawings light up and left */
+};
+
+/*
+#define cet_ucs4_to_koi_8_cs2_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_koi_8_cs2_extra[cet_ucs4_to_koi_8_cs2_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_koi_8_cs2 = /* defined in cet.h */
+{
+ cet_cs_name_koi_8_cs2, /* name of character set */
+ cet_cs_alias_koi_8_cs2, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_koi_8_cs2, /* char to UCS-4 value table */
+ cet_ucs4_ofs_koi_8_cs2, /* first non standard character */
+ cet_ucs4_cnt_koi_8_cs2, /* number of values in table */
+
+ cet_ucs4_to_koi_8_cs2_links, /* UCS-4 to char links */
+ cet_ucs4_to_koi_8_cs2_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int koi_8_cs2_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00a0, -1, 0x00b4, -1, 0x007e, -1, 0x02d8, 0x02d9,
+ 0x00a8, -1, 0x02da, 0x00b8, -1, 0x02dd, 0x02db, 0x02c7,
+ 0x00a9, 0x2122, 0x250c, 0x2510, 0x2514, 0x2518, 0x2500, 0x2193,
+ 0x03a9, 0x00a7, 0x03b1, 0x03b3, 0x03b5, 0x03bc, 0x03c0, 0x03c9,
+ 0x00e0, 0x00e1, 0x01ce, 0x010d, 0x010f, 0x011b, 0x0155, -1,
+ 0x00fc, 0x00ed, 0x016f, 0x013a, 0x013e, 0x00f6, 0x0148, 0x00f3,
+ 0x00f4, 0x00e4, 0x0159, 0x0161, 0x0165, 0x00fa, 0x00eb, 0x00e9,
+ 0x0171, 0x00fd, 0x017e, -1, -1, 0x0151, 0x0117, 0x00df,
+ 0x00c0, 0x00c1, 0x01cd, 0x010c, 0x010e, 0x011a, 0x0154, -1,
+ 0x00dc, 0x00cd, 0x016e, 0x0139, 0x013d, 0x00d6, 0x0147, 0x00d3,
+ 0x00d4, 0x00c4, 0x0158, 0x0160, 0x0164, 0x00da, 0x00cb, 0x00c9,
+ 0x0170, 0x00dd, 0x017d, -1, -1, 0x0150, 0x0116, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "KSC5636" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ksc5636_h
+#define ksc5636_h
+
+#define cet_cs_name_ksc5636 "KSC5636"
+
+const char *cet_cs_alias_ksc5636[] =
+{
+ "KSC5636", "ISO646-KR", NULL
+};
+
+#define cet_ucs4_ofs_ksc5636 92
+#define cet_ucs4_cnt_ksc5636 36
+
+const int cet_ucs4_map_ksc5636[cet_ucs4_cnt_ksc5636] =
+{
+ 0x20a9, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x007b,
+ 0x007c, 0x007d, 0x007e, 0x007f
+};
+
+#define cet_ucs4_to_ksc5636_ct 1
+
+const cet_ucs4_link_t cet_ucs4_to_ksc5636_links[cet_ucs4_to_ksc5636_ct] =
+{
+ {0x20a9, 0x5c} /* sign */
+};
+
+/*
+#define cet_ucs4_to_ksc5636_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ksc5636_extra[cet_ucs4_to_ksc5636_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ksc5636 = /* defined in cet.h */
+{
+ cet_cs_name_ksc5636, /* name of character set */
+ cet_cs_alias_ksc5636, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ksc5636, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ksc5636, /* first non standard character */
+ cet_ucs4_cnt_ksc5636, /* number of values in table */
+
+ cet_ucs4_to_ksc5636_links, /* UCS-4 to char links */
+ cet_ucs4_to_ksc5636_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ksc5636_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x20a9, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "Latin-greek-1" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef latin_greek_1_h
+#define latin_greek_1_h
+
+#define cet_cs_name_latin_greek_1 "Latin-greek-1"
+
+const char *cet_cs_alias_latin_greek_1[] =
+{
+ "Latin-greek-1", "iso-ir-27", NULL
+};
+
+#define cet_ucs4_ofs_latin_greek_1 33
+#define cet_ucs4_cnt_latin_greek_1 95
+
+const int cet_ucs4_map_latin_greek_1[cet_ucs4_cnt_latin_greek_1] =
+{
+ 0x039e, 0x0022, 0x0393, 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028,
+ 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030,
+ 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038,
+ 0x0039, 0x03a8, 0x003b, 0x003c, 0x003d, 0x003e, 0x03a0, 0x0394,
+ 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048,
+ 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x03a9, 0x0398, 0x03a6, 0x039b, 0x03a3, 0x0060,
+ 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068,
+ 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x203e, 0x007f
+};
+
+#define cet_ucs4_to_latin_greek_1_ct 12
+
+const cet_ucs4_link_t cet_ucs4_to_latin_greek_1_links[cet_ucs4_to_latin_greek_1_ct] =
+{
+ {0x00a4, 0x24} /* sign */,
+ {0x0393, 0x23} /* capital letter gamma */,
+ {0x0394, 0x40} /* capital letter delta */,
+ {0x0398, 0x5c} /* capital letter theta */,
+ {0x039b, 0x5e} /* capital letter lamda */,
+ {0x039e, 0x21} /* capital letter xi */,
+ {0x03a0, 0x3f} /* capital letter pi */,
+ {0x03a3, 0x5f} /* capital letter sigma */,
+ {0x03a6, 0x5d} /* capital letter phi */,
+ {0x03a8, 0x3a} /* capital letter psi */,
+ {0x03a9, 0x5b} /* capital letter omega */,
+ {0x203e, 0x7e} /* overline */
+};
+
+/*
+#define cet_ucs4_to_latin_greek_1_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_latin_greek_1_extra[cet_ucs4_to_latin_greek_1_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_latin_greek_1 = /* defined in cet.h */
+{
+ cet_cs_name_latin_greek_1, /* name of character set */
+ cet_cs_alias_latin_greek_1, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_latin_greek_1, /* char to UCS-4 value table */
+ cet_ucs4_ofs_latin_greek_1, /* first non standard character */
+ cet_ucs4_cnt_latin_greek_1, /* number of values in table */
+
+ cet_ucs4_to_latin_greek_1_links, /* UCS-4 to char links */
+ cet_ucs4_to_latin_greek_1_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int latin_greek_1_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x039e, 0x0022, 0x0393, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x03a8, 0x003b, 0x003c, 0x003d, 0x003e, 0x03a0,
+ 0x0394, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x03a9, 0x0398, 0x03a6, 0x039b, 0x03a3,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x203e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "mac-is" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef mac_is_h
+#define mac_is_h
+
+#define cet_cs_name_mac_is "mac-is"
+
+const char *cet_cs_alias_mac_is[] =
+{
+ "mac-is", NULL
+};
+
+#define cet_ucs4_ofs_mac_is 128
+#define cet_ucs4_cnt_mac_is 128
+
+const int cet_ucs4_map_mac_is[cet_ucs4_cnt_mac_is] =
+{
+ 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+ 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+ 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+ 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+ 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+ 0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
+ 0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
+ 0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x00e6, 0x00f8,
+ 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x0394, 0x00ab,
+ 0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
+ 0x2014, 0x2013, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25c6,
+ 0x00ff, 0x0178, 0x2044, 0x00a4, 0x0110, 0x0111, 0x00de, 0x00fe,
+ 0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
+ 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
+ 0xe01e, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, -1, -1,
+ 0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7
+};
+
+#define cet_ucs4_to_mac_is_ct 120
+
+const cet_ucs4_link_t cet_ucs4_to_mac_is_links[cet_ucs4_to_mac_is_ct] =
+{
+ {0x00a0, 0xca} /* space */,
+ {0x00a1, 0xc1} /* exclamation mark */,
+ {0x00a4, 0xdb} /* sign */,
+ {0x00a5, 0xb4} /* sign */,
+ {0x00a7, 0xa4} /* sign */,
+ {0x00a8, 0xac} /* diaeresis */,
+ {0x00aa, 0xbb} /* ordinal indicator */,
+ {0x00ab, 0xc7} /* double angle quotation mark */,
+ {0x00ac, 0xc2} /* sign */,
+ {0x00ae, 0xa8} /* sign */,
+ {0x00af, 0xf8} /* macron */,
+ {0x00b0, 0xa1} /* sign */,
+ {0x00b4, 0xab} /* accent */,
+ {0x00b6, 0xa6} /* sign */,
+ {0x00b7, 0xe1} /* dot */,
+ {0x00b8, 0xfc} /* cedilla */,
+ {0x00ba, 0xbc} /* ordinal indicator */,
+ {0x00bb, 0xc8} /* double angle quotation mark */,
+ {0x00bf, 0xc0} /* question mark */,
+ {0x00c0, 0xcb} /* capital letter a with grave */,
+ {0x00c1, 0xe7} /* capital letter a with acute */,
+ {0x00c2, 0xe5} /* capital letter a with circumflex */,
+ {0x00c3, 0xcc} /* capital letter a with tilde */,
+ {0x00c4, 0x80} /* capital letter a with diaeresis */,
+ {0x00c5, 0x81} /* capital letter a with ring above */,
+ {0x00c6, 0xae} /* capital letter ae */,
+ {0x00c7, 0x82} /* capital letter c with cedilla */,
+ {0x00c8, 0xe9} /* capital letter e with grave */,
+ {0x00c9, 0x83} /* capital letter e with acute */,
+ {0x00ca, 0xe6} /* capital letter e with circumflex */,
+ {0x00cb, 0xe8} /* capital letter e with diaeresis */,
+ {0x00cc, 0xed} /* capital letter i with grave */,
+ {0x00cd, 0xea} /* capital letter i with acute */,
+ {0x00ce, 0xeb} /* capital letter i with circumflex */,
+ {0x00cf, 0xec} /* capital letter i with diaeresis */,
+ {0x00d1, 0x84} /* capital letter n with tilde */,
+ {0x00d2, 0xf1} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xef} /* capital letter o with circumflex */,
+ {0x00d5, 0xcd} /* capital letter o with tilde */,
+ {0x00d6, 0x85} /* capital letter o with diaeresis */,
+ {0x00d8, 0xaf} /* capital letter o with stroke */,
+ {0x00d9, 0xf4} /* capital letter u with grave */,
+ {0x00da, 0xf2} /* capital letter u with acute */,
+ {0x00db, 0xf3} /* capital letter u with circumflex */,
+ {0x00dc, 0x86} /* capital letter u with diaeresis */,
+ {0x00df, 0xa7} /* small letter sharp s (german) */,
+ {0x00e0, 0x88} /* small letter a with grave */,
+ {0x00e1, 0x87} /* small letter a with acute */,
+ {0x00e2, 0x89} /* small letter a with circumflex */,
+ {0x00e3, 0x8b} /* small letter a with tilde */,
+ {0x00e4, 0x8a} /* small letter a with diaeresis */,
+ {0x00e5, 0x8c} /* small letter a with ring above */,
+ {0x00e6, 0xbe} /* small letter ae */,
+ {0x00e7, 0x8d} /* small letter c with cedilla */,
+ {0x00e8, 0x8f} /* small letter e with grave */,
+ {0x00e9, 0x8e} /* small letter e with acute */,
+ {0x00ea, 0x90} /* small letter e with circumflex */,
+ {0x00eb, 0x91} /* small letter e with diaeresis */,
+ {0x00ec, 0x93} /* small letter i with grave */,
+ {0x00ed, 0x92} /* small letter i with acute */,
+ {0x00ee, 0x94} /* small letter i with circumflex */,
+ {0x00ef, 0x95} /* small letter i with diaeresis */,
+ {0x00f1, 0x96} /* small letter n with tilde */,
+ {0x00f2, 0x98} /* small letter o with grave */,
+ {0x00f3, 0x97} /* small letter o with acute */,
+ {0x00f4, 0x99} /* small letter o with circumflex */,
+ {0x00f5, 0x9b} /* small letter o with tilde */,
+ {0x00f6, 0x9a} /* small letter o with diaeresis */,
+ {0x00f7, 0xd6} /* sign */,
+ {0x00f8, 0xbf} /* small letter o with stroke */,
+ {0x00f9, 0x9d} /* small letter u with grave */,
+ {0x00fa, 0x9c} /* small letter u with acute */,
+ {0x00fb, 0x9e} /* small letter u with circumflex */,
+ {0x00fc, 0x9f} /* small letter u with diaeresis */,
+ {0x00fe, 0xdf} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xd8} /* small letter y with diaeresis */,
+ {0x0110, 0xdc} /* capital letter d with stroke */,
+ {0x0111, 0xdd} /* small letter d with stroke */,
+ {0x0131, 0xf5} /* small letter i dotless */,
+ {0x0152, 0xce} /* capital ligature oe */,
+ {0x0153, 0xcf} /* small ligature oe */,
+ {0x0178, 0xd9} /* capital letter y with diaeresis */,
+ {0x0192, 0xc4} /* minuscule latine f hameçon */,
+ {0x02c7, 0xff} /* caron */,
+ {0x02d8, 0xf9} /* breve */,
+ {0x02d9, 0xfa} /* above */,
+ {0x02da, 0xfb} /* above */,
+ {0x02db, 0xfe} /* ogonek */,
+ {0x02dd, 0xfd} /* acute accent */,
+ {0x0394, 0xc6} /* capital letter delta */,
+ {0x03a9, 0xbd} /* capital letter omega */,
+ {0x03c0, 0xb9} /* small letter pi */,
+ {0x2013, 0xd1} /* dash */,
+ {0x2014, 0xd0} /* dash */,
+ {0x2018, 0xd4} /* single quotation mark */,
+ {0x2019, 0xd5} /* single quotation mark */,
+ {0x201a, 0xe2} /* low-9 quotation mark */,
+ {0x201c, 0xd2} /* double quotation mark */,
+ {0x201d, 0xd3} /* double quotation mark */,
+ {0x201e, 0xe3} /* low-9 quotation mark */,
+ {0x2020, 0xa0} /* dagger */,
+ {0x2021, 0xe0} /* dagger */,
+ {0x2022, 0xa5} /* puce */,
+ {0x2026, 0xc9} /* horizontal ellipsis */,
+ {0x2030, 0xe4} /* mille sign */,
+ {0x2044, 0xda} /* slash */,
+ {0x2122, 0xaa} /* mark sign */,
+ {0x2202, 0xb6} /* differential */,
+ {0x220f, 0xb8} /* product */,
+ {0x2211, 0xb7} /* summation */,
+ {0x221a, 0xc3} /* root */,
+ {0x221e, 0xb0} /* infinity */,
+ {0x222b, 0xba} /* integral */,
+ {0x2248, 0xc5} /* equal to */,
+ {0x2260, 0xad} /* equal to */,
+ {0x2264, 0xb2} /* or equal to */,
+ {0x2265, 0xb3} /* or equal to */,
+ {0x25c6, 0xd7} /* diamond */,
+ {0xe01e, 0xf0} /* */
+};
+
+/*
+#define cet_ucs4_to_mac_is_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_mac_is_extra[cet_ucs4_to_mac_is_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_mac_is = /* defined in cet.h */
+{
+ cet_cs_name_mac_is, /* name of character set */
+ cet_cs_alias_mac_is, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_mac_is, /* char to UCS-4 value table */
+ cet_ucs4_ofs_mac_is, /* first non standard character */
+ cet_ucs4_cnt_mac_is, /* number of values in table */
+
+ cet_ucs4_to_mac_is_links, /* UCS-4 to char links */
+ cet_ucs4_to_mac_is_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int mac_is_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+ 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+ 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+ 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+ 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+ 0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
+ 0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
+ 0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x00e6, 0x00f8,
+ 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x0394, 0x00ab,
+ 0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x00d5, 0x0152, 0x0153,
+ 0x2014, 0x2013, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25c6,
+ 0x00ff, 0x0178, 0x2044, 0x00a4, 0x0110, 0x0111, 0x00de, 0x00fe,
+ 0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
+ 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
+ 0xe01e, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, -1, -1,
+ 0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "macintosh" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef macintosh_h
+#define macintosh_h
+
+#define cet_cs_name_macintosh "macintosh"
+
+const char *cet_cs_alias_macintosh[] =
+{
+ "macintosh/CR", "csMacintosh", "mac/CR", "MacRoman",
+ NULL
+};
+
+#define cet_ucs4_ofs_macintosh 128
+#define cet_ucs4_cnt_macintosh 128
+
+const int cet_ucs4_map_macintosh[cet_ucs4_cnt_macintosh] =
+{
+ 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+ 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+ 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+ 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+ 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+ 0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
+ 0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
+ 0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x00e6, 0x00f8,
+ 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x0394, 0x00ab,
+ 0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x2126, 0x0152, 0x0153,
+ 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
+ 0x00ff, 0x0178, 0x2044, 0x00a4, 0x2039, 0x203a, 0xfb01, 0xfb02,
+ 0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
+ 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
+ 0xe01e, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, -1, -1,
+ 0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7
+};
+
+#define cet_ucs4_to_macintosh_ct 121
+
+const cet_ucs4_link_t cet_ucs4_to_macintosh_links[cet_ucs4_to_macintosh_ct] =
+{
+ {0x00a0, 0xca} /* space */,
+ {0x00a1, 0xc1} /* exclamation mark */,
+ {0x00a4, 0xdb} /* sign */,
+ {0x00a5, 0xb4} /* sign */,
+ {0x00a7, 0xa4} /* sign */,
+ {0x00a8, 0xac} /* diaeresis */,
+ {0x00aa, 0xbb} /* ordinal indicator */,
+ {0x00ab, 0xc7} /* double angle quotation mark */,
+ {0x00ac, 0xc2} /* sign */,
+ {0x00ae, 0xa8} /* sign */,
+ {0x00af, 0xf8} /* macron */,
+ {0x00b0, 0xa1} /* sign */,
+ {0x00b4, 0xab} /* accent */,
+ {0x00b6, 0xa6} /* sign */,
+ {0x00b7, 0xe1} /* dot */,
+ {0x00b8, 0xfc} /* cedilla */,
+ {0x00ba, 0xbc} /* ordinal indicator */,
+ {0x00bb, 0xc8} /* double angle quotation mark */,
+ {0x00bf, 0xc0} /* question mark */,
+ {0x00c0, 0xcb} /* capital letter a with grave */,
+ {0x00c1, 0xe7} /* capital letter a with acute */,
+ {0x00c2, 0xe5} /* capital letter a with circumflex */,
+ {0x00c3, 0xcc} /* capital letter a with tilde */,
+ {0x00c4, 0x80} /* capital letter a with diaeresis */,
+ {0x00c5, 0x81} /* capital letter a with ring above */,
+ {0x00c6, 0xae} /* capital letter ae */,
+ {0x00c7, 0x82} /* capital letter c with cedilla */,
+ {0x00c8, 0xe9} /* capital letter e with grave */,
+ {0x00c9, 0x83} /* capital letter e with acute */,
+ {0x00ca, 0xe6} /* capital letter e with circumflex */,
+ {0x00cb, 0xe8} /* capital letter e with diaeresis */,
+ {0x00cc, 0xed} /* capital letter i with grave */,
+ {0x00cd, 0xea} /* capital letter i with acute */,
+ {0x00ce, 0xeb} /* capital letter i with circumflex */,
+ {0x00cf, 0xec} /* capital letter i with diaeresis */,
+ {0x00d1, 0x84} /* capital letter n with tilde */,
+ {0x00d2, 0xf1} /* capital letter o with grave */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xef} /* capital letter o with circumflex */,
+ {0x00d6, 0x85} /* capital letter o with diaeresis */,
+ {0x00d8, 0xaf} /* capital letter o with stroke */,
+ {0x00d9, 0xf4} /* capital letter u with grave */,
+ {0x00da, 0xf2} /* capital letter u with acute */,
+ {0x00db, 0xf3} /* capital letter u with circumflex */,
+ {0x00dc, 0x86} /* capital letter u with diaeresis */,
+ {0x00df, 0xa7} /* small letter sharp s (german) */,
+ {0x00e0, 0x88} /* small letter a with grave */,
+ {0x00e1, 0x87} /* small letter a with acute */,
+ {0x00e2, 0x89} /* small letter a with circumflex */,
+ {0x00e3, 0x8b} /* small letter a with tilde */,
+ {0x00e4, 0x8a} /* small letter a with diaeresis */,
+ {0x00e5, 0x8c} /* small letter a with ring above */,
+ {0x00e6, 0xbe} /* small letter ae */,
+ {0x00e7, 0x8d} /* small letter c with cedilla */,
+ {0x00e8, 0x8f} /* small letter e with grave */,
+ {0x00e9, 0x8e} /* small letter e with acute */,
+ {0x00ea, 0x90} /* small letter e with circumflex */,
+ {0x00eb, 0x91} /* small letter e with diaeresis */,
+ {0x00ec, 0x93} /* small letter i with grave */,
+ {0x00ed, 0x92} /* small letter i with acute */,
+ {0x00ee, 0x94} /* small letter i with circumflex */,
+ {0x00ef, 0x95} /* small letter i with diaeresis */,
+ {0x00f1, 0x96} /* small letter n with tilde */,
+ {0x00f2, 0x98} /* small letter o with grave */,
+ {0x00f3, 0x97} /* small letter o with acute */,
+ {0x00f4, 0x99} /* small letter o with circumflex */,
+ {0x00f5, 0x9b} /* small letter o with tilde */,
+ {0x00f6, 0x9a} /* small letter o with diaeresis */,
+ {0x00f7, 0xd6} /* sign */,
+ {0x00f8, 0xbf} /* small letter o with stroke */,
+ {0x00f9, 0x9d} /* small letter u with grave */,
+ {0x00fa, 0x9c} /* small letter u with acute */,
+ {0x00fb, 0x9e} /* small letter u with circumflex */,
+ {0x00fc, 0x9f} /* small letter u with diaeresis */,
+ {0x00ff, 0xd8} /* small letter y with diaeresis */,
+ {0x0131, 0xf5} /* small letter i dotless */,
+ {0x0152, 0xce} /* capital ligature oe */,
+ {0x0153, 0xcf} /* small ligature oe */,
+ {0x0178, 0xd9} /* capital letter y with diaeresis */,
+ {0x0192, 0xc4} /* minuscule latine f hameçon */,
+ {0x02c7, 0xff} /* caron */,
+ {0x02d8, 0xf9} /* breve */,
+ {0x02d9, 0xfa} /* above */,
+ {0x02da, 0xfb} /* above */,
+ {0x02db, 0xfe} /* ogonek */,
+ {0x02dd, 0xfd} /* acute accent */,
+ {0x0394, 0xc6} /* capital letter delta */,
+ {0x03a9, 0xbd} /* capital letter omega */,
+ {0x03c0, 0xb9} /* small letter pi */,
+ {0x2013, 0xd0} /* dash */,
+ {0x2014, 0xd1} /* dash */,
+ {0x2018, 0xd4} /* single quotation mark */,
+ {0x2019, 0xd5} /* single quotation mark */,
+ {0x201a, 0xe2} /* low-9 quotation mark */,
+ {0x201c, 0xd2} /* double quotation mark */,
+ {0x201d, 0xd3} /* double quotation mark */,
+ {0x201e, 0xe3} /* low-9 quotation mark */,
+ {0x2020, 0xa0} /* dagger */,
+ {0x2021, 0xe0} /* dagger */,
+ {0x2022, 0xa5} /* puce */,
+ {0x2026, 0xc9} /* horizontal ellipsis */,
+ {0x2030, 0xe4} /* mille sign */,
+ {0x2039, 0xdc} /* left-pointing angle quotation mark */,
+ {0x203a, 0xdd} /* right-pointing angle quotation mark */,
+ {0x2044, 0xda} /* slash */,
+ {0x2122, 0xaa} /* mark sign */,
+ {0x2126, 0xcd} /* sign */,
+ {0x2202, 0xb6} /* differential */,
+ {0x220f, 0xb8} /* product */,
+ {0x2211, 0xb7} /* summation */,
+ {0x221a, 0xc3} /* root */,
+ {0x221e, 0xb0} /* infinity */,
+ {0x222b, 0xba} /* integral */,
+ {0x2248, 0xc5} /* equal to */,
+ {0x2260, 0xad} /* equal to */,
+ {0x2264, 0xb2} /* or equal to */,
+ {0x2265, 0xb3} /* or equal to */,
+ {0x25ca, 0xd7} /* lozenge */,
+ {0xe01e, 0xf0} /* */,
+ {0xfb01, 0xde} /* small ligature fi */,
+ {0xfb02, 0xdf} /* small ligature fl */
+};
+
+/*
+#define cet_ucs4_to_macintosh_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_macintosh_extra[cet_ucs4_to_macintosh_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_macintosh = /* defined in cet.h */
+{
+ cet_cs_name_macintosh, /* name of character set */
+ cet_cs_alias_macintosh, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_macintosh, /* char to UCS-4 value table */
+ cet_ucs4_ofs_macintosh, /* first non standard character */
+ cet_ucs4_cnt_macintosh, /* number of values in table */
+
+ cet_ucs4_to_macintosh_links, /* UCS-4 to char links */
+ cet_ucs4_to_macintosh_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int macintosh_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c4, 0x00c5, 0x00c7, 0x00c9, 0x00d1, 0x00d6, 0x00dc, 0x00e1,
+ 0x00e0, 0x00e2, 0x00e4, 0x00e3, 0x00e5, 0x00e7, 0x00e9, 0x00e8,
+ 0x00ea, 0x00eb, 0x00ed, 0x00ec, 0x00ee, 0x00ef, 0x00f1, 0x00f3,
+ 0x00f2, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x00f9, 0x00fb, 0x00fc,
+ 0x2020, 0x00b0, 0x00a2, 0x00a3, 0x00a7, 0x2022, 0x00b6, 0x00df,
+ 0x00ae, 0x00a9, 0x2122, 0x00b4, 0x00a8, 0x2260, 0x00c6, 0x00d8,
+ 0x221e, 0x00b1, 0x2264, 0x2265, 0x00a5, 0x00b5, 0x2202, 0x2211,
+ 0x220f, 0x03c0, 0x222b, 0x00aa, 0x00ba, 0x03a9, 0x00e6, 0x00f8,
+ 0x00bf, 0x00a1, 0x00ac, 0x221a, 0x0192, 0x2248, 0x0394, 0x00ab,
+ 0x00bb, 0x2026, 0x00a0, 0x00c0, 0x00c3, 0x2126, 0x0152, 0x0153,
+ 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25ca,
+ 0x00ff, 0x0178, 0x2044, 0x00a4, 0x2039, 0x203a, 0xfb01, 0xfb02,
+ 0x2021, 0x00b7, 0x201a, 0x201e, 0x2030, 0x00c2, 0x00ca, 0x00c1,
+ 0x00cb, 0x00c8, 0x00cd, 0x00ce, 0x00cf, 0x00cc, 0x00d3, 0x00d4,
+ 0xe01e, 0x00d2, 0x00da, 0x00db, 0x00d9, 0x0131, -1, -1,
+ 0x00af, 0x02d8, 0x02d9, 0x02da, 0x00b8, 0x02dd, 0x02db, 0x02c7
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "macintosh_ce" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef macintosh_ce_h
+#define macintosh_ce_h
+
+#define cet_cs_name_macintosh_ce "macintosh_ce"
+
+const char *cet_cs_alias_macintosh_ce[] =
+{
+ "macintosh_ce/CR", "macce/CR", NULL
+};
+
+#define cet_ucs4_ofs_macintosh_ce 128
+#define cet_ucs4_cnt_macintosh_ce 128
+
+const int cet_ucs4_map_macintosh_ce[cet_ucs4_cnt_macintosh_ce] =
+{
+ 0x00c4, 0x0100, 0x0101, 0x00c9, 0x0104, 0x00d6, 0x00dc, 0x00e1,
+ 0x0105, 0x010c, 0x00e4, 0x010d, 0x0106, 0x0107, 0x00e9, 0x0179,
+ 0x017a, 0x010e, 0x00ed, 0x010f, 0x0112, 0x0113, 0x0116, 0x00f3,
+ 0x0117, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x011a, 0x011b, 0x00fc,
+ 0x2020, 0x00b0, 0x0118, 0x00a3, 0x00a7, 0x2219, 0x00b6, 0x00df,
+ 0x00ae, 0x00a9, 0x2122, 0x0119, 0x00a8, 0x2260, 0x01f5, 0x012e,
+ 0x012f, 0x012a, 0x2264, 0x2265, 0x012b, 0x0136, 0x2202, 0x2211,
+ 0x0142, 0x013b, 0x013c, 0x013d, 0x013e, 0x0139, 0x013a, 0x0145,
+ 0x0146, 0x0143, 0x00ac, 0x221a, 0x0144, 0x0147, 0x0394, 0x00ab,
+ 0x00bb, 0x2026, 0x00a0, 0x0148, 0x0150, 0x00d5, 0x0151, 0x014c,
+ 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25c6,
+ 0x014d, 0x0154, 0x0155, 0x0158, 0x2039, 0x203a, 0x0159, 0x0156,
+ 0x0157, 0x0160, 0x201a, 0x201e, 0x0161, 0x015a, 0x015b, 0x00c1,
+ 0x0164, 0x0165, 0x00cd, 0x017d, 0x017e, 0x016a, 0x00d3, 0x00d4,
+ 0x016b, 0x016e, 0x00da, 0x016f, 0x0170, 0x0171, 0x0172, 0x0173,
+ 0x00dd, 0x00fd, 0x0137, 0x017b, 0x0141, 0x017c, 0x0122, 0x02c7
+};
+
+#define cet_ucs4_to_macintosh_ce_ct 126
+
+const cet_ucs4_link_t cet_ucs4_to_macintosh_ce_links[cet_ucs4_to_macintosh_ce_ct] =
+{
+ {0x00a0, 0xca} /* space */,
+ {0x00a7, 0xa4} /* sign */,
+ {0x00a8, 0xac} /* diaeresis */,
+ {0x00ab, 0xc7} /* double angle quotation mark */,
+ {0x00ac, 0xc2} /* sign */,
+ {0x00ae, 0xa8} /* sign */,
+ {0x00b0, 0xa1} /* sign */,
+ {0x00b6, 0xa6} /* sign */,
+ {0x00bb, 0xc8} /* double angle quotation mark */,
+ {0x00c1, 0xe7} /* capital letter a with acute */,
+ {0x00c4, 0x80} /* capital letter a with diaeresis */,
+ {0x00c9, 0x83} /* capital letter e with acute */,
+ {0x00cd, 0xea} /* capital letter i with acute */,
+ {0x00d3, 0xee} /* capital letter o with acute */,
+ {0x00d4, 0xef} /* capital letter o with circumflex */,
+ {0x00d5, 0xcd} /* capital letter o with tilde */,
+ {0x00d6, 0x85} /* capital letter o with diaeresis */,
+ {0x00da, 0xf2} /* capital letter u with acute */,
+ {0x00dc, 0x86} /* capital letter u with diaeresis */,
+ {0x00dd, 0xf8} /* capital letter y with acute */,
+ {0x00df, 0xa7} /* small letter sharp s (german) */,
+ {0x00e1, 0x87} /* small letter a with acute */,
+ {0x00e4, 0x8a} /* small letter a with diaeresis */,
+ {0x00e9, 0x8e} /* small letter e with acute */,
+ {0x00ed, 0x92} /* small letter i with acute */,
+ {0x00f3, 0x97} /* small letter o with acute */,
+ {0x00f4, 0x99} /* small letter o with circumflex */,
+ {0x00f5, 0x9b} /* small letter o with tilde */,
+ {0x00f6, 0x9a} /* small letter o with diaeresis */,
+ {0x00f7, 0xd6} /* sign */,
+ {0x00fa, 0x9c} /* small letter u with acute */,
+ {0x00fc, 0x9f} /* small letter u with diaeresis */,
+ {0x00fd, 0xf9} /* small letter y with acute */,
+ {0x0100, 0x81} /* capital letter a with macron */,
+ {0x0101, 0x82} /* small letter a with macron */,
+ {0x0104, 0x84} /* capital letter a with ogonek */,
+ {0x0105, 0x88} /* small letter a with ogonek */,
+ {0x0106, 0x8c} /* capital letter c with acute */,
+ {0x0107, 0x8d} /* small letter c with acute */,
+ {0x010c, 0x89} /* capital letter c with caron */,
+ {0x010d, 0x8b} /* small letter c with caron */,
+ {0x010e, 0x91} /* capital letter d with caron */,
+ {0x010f, 0x93} /* small letter d with caron */,
+ {0x0112, 0x94} /* capital letter e with macron */,
+ {0x0113, 0x95} /* small letter e with macron */,
+ {0x0116, 0x96} /* capital letter e with dot above */,
+ {0x0117, 0x98} /* small letter e with dot above */,
+ {0x0118, 0xa2} /* capital letter e with ogonek */,
+ {0x0119, 0xab} /* small letter e with ogonek */,
+ {0x011a, 0x9d} /* capital letter e with caron */,
+ {0x011b, 0x9e} /* small letter e with caron */,
+ {0x0122, 0xfe} /* capital letter g with cedilla */,
+ {0x012a, 0xb1} /* capital letter i with macron */,
+ {0x012b, 0xb4} /* small letter i with macron */,
+ {0x012e, 0xaf} /* capital letter i with ogonek */,
+ {0x012f, 0xb0} /* small letter i with ogonek */,
+ {0x0136, 0xb5} /* capital letter k with cedilla */,
+ {0x0137, 0xfa} /* small letter k with cedilla */,
+ {0x0139, 0xbd} /* capital letter l with acute */,
+ {0x013a, 0xbe} /* small letter l with acute */,
+ {0x013b, 0xb9} /* capital letter l with cedilla */,
+ {0x013c, 0xba} /* small letter l with cedilla */,
+ {0x013d, 0xbb} /* capital letter l with caron */,
+ {0x013e, 0xbc} /* small letter l with caron */,
+ {0x0141, 0xfc} /* capital letter l with stroke */,
+ {0x0142, 0xb8} /* small letter l with stroke */,
+ {0x0143, 0xc1} /* capital letter n with acute */,
+ {0x0144, 0xc4} /* small letter n with acute */,
+ {0x0145, 0xbf} /* capital letter n with cedilla */,
+ {0x0146, 0xc0} /* small letter n with cedilla */,
+ {0x0147, 0xc5} /* capital letter n with caron */,
+ {0x0148, 0xcb} /* small letter n with caron */,
+ {0x014c, 0xcf} /* capital letter o with macron */,
+ {0x014d, 0xd8} /* small letter o with macron */,
+ {0x0150, 0xcc} /* capital letter o with double acute */,
+ {0x0151, 0xce} /* small letter o with double acute */,
+ {0x0154, 0xd9} /* capital letter r with acute */,
+ {0x0155, 0xda} /* small letter r with acute */,
+ {0x0156, 0xdf} /* capital letter r with cedilla */,
+ {0x0157, 0xe0} /* small letter r with cedilla */,
+ {0x0158, 0xdb} /* capital letter r with caron */,
+ {0x0159, 0xde} /* small letter r with caron */,
+ {0x015a, 0xe5} /* capital letter s with acute */,
+ {0x015b, 0xe6} /* small letter s with acute */,
+ {0x0160, 0xe1} /* capital letter s with caron */,
+ {0x0161, 0xe4} /* small letter s with caron */,
+ {0x0164, 0xe8} /* capital letter t with caron */,
+ {0x0165, 0xe9} /* small letter t with caron */,
+ {0x016a, 0xed} /* capital letter u with macron */,
+ {0x016b, 0xf0} /* small letter u with macron */,
+ {0x016e, 0xf1} /* capital letter u with ring above */,
+ {0x016f, 0xf3} /* small letter u with ring above */,
+ {0x0170, 0xf4} /* capital letter u with double acute */,
+ {0x0171, 0xf5} /* small letter u with double acute */,
+ {0x0172, 0xf6} /* capital letter u with ogonek */,
+ {0x0173, 0xf7} /* small letter u with ogonek */,
+ {0x0179, 0x8f} /* capital letter z with acute */,
+ {0x017a, 0x90} /* small letter z with acute */,
+ {0x017b, 0xfb} /* capital letter z with dot above */,
+ {0x017c, 0xfd} /* small letter z with dot above */,
+ {0x017d, 0xeb} /* capital letter z with caron */,
+ {0x017e, 0xec} /* small letter z with caron */,
+ {0x01f5, 0xae} /* small letter g with acute */,
+ {0x02c7, 0xff} /* caron */,
+ {0x0394, 0xc6} /* capital letter delta */,
+ {0x2013, 0xd0} /* dash */,
+ {0x2014, 0xd1} /* dash */,
+ {0x2018, 0xd4} /* single quotation mark */,
+ {0x2019, 0xd5} /* single quotation mark */,
+ {0x201a, 0xe2} /* low-9 quotation mark */,
+ {0x201c, 0xd2} /* double quotation mark */,
+ {0x201d, 0xd3} /* double quotation mark */,
+ {0x201e, 0xe3} /* low-9 quotation mark */,
+ {0x2020, 0xa0} /* dagger */,
+ {0x2026, 0xc9} /* horizontal ellipsis */,
+ {0x2039, 0xdc} /* left-pointing angle quotation mark */,
+ {0x203a, 0xdd} /* right-pointing angle quotation mark */,
+ {0x2122, 0xaa} /* mark sign */,
+ {0x2202, 0xb6} /* differential */,
+ {0x2211, 0xb7} /* summation */,
+ {0x2219, 0xa5} /* operator */,
+ {0x221a, 0xc3} /* root */,
+ {0x2260, 0xad} /* equal to */,
+ {0x2264, 0xb2} /* or equal to */,
+ {0x2265, 0xb3} /* or equal to */,
+ {0x25c6, 0xd7} /* diamond */
+};
+
+/*
+#define cet_ucs4_to_macintosh_ce_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_macintosh_ce_extra[cet_ucs4_to_macintosh_ce_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_macintosh_ce = /* defined in cet.h */
+{
+ cet_cs_name_macintosh_ce, /* name of character set */
+ cet_cs_alias_macintosh_ce, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_macintosh_ce, /* char to UCS-4 value table */
+ cet_ucs4_ofs_macintosh_ce, /* first non standard character */
+ cet_ucs4_cnt_macintosh_ce, /* number of values in table */
+
+ cet_ucs4_to_macintosh_ce_links, /* UCS-4 to char links */
+ cet_ucs4_to_macintosh_ce_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int macintosh_ce_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c4, 0x0100, 0x0101, 0x00c9, 0x0104, 0x00d6, 0x00dc, 0x00e1,
+ 0x0105, 0x010c, 0x00e4, 0x010d, 0x0106, 0x0107, 0x00e9, 0x0179,
+ 0x017a, 0x010e, 0x00ed, 0x010f, 0x0112, 0x0113, 0x0116, 0x00f3,
+ 0x0117, 0x00f4, 0x00f6, 0x00f5, 0x00fa, 0x011a, 0x011b, 0x00fc,
+ 0x2020, 0x00b0, 0x0118, 0x00a3, 0x00a7, 0x2219, 0x00b6, 0x00df,
+ 0x00ae, 0x00a9, 0x2122, 0x0119, 0x00a8, 0x2260, 0x01f5, 0x012e,
+ 0x012f, 0x012a, 0x2264, 0x2265, 0x012b, 0x0136, 0x2202, 0x2211,
+ 0x0142, 0x013b, 0x013c, 0x013d, 0x013e, 0x0139, 0x013a, 0x0145,
+ 0x0146, 0x0143, 0x00ac, 0x221a, 0x0144, 0x0147, 0x0394, 0x00ab,
+ 0x00bb, 0x2026, 0x00a0, 0x0148, 0x0150, 0x00d5, 0x0151, 0x014c,
+ 0x2013, 0x2014, 0x201c, 0x201d, 0x2018, 0x2019, 0x00f7, 0x25c6,
+ 0x014d, 0x0154, 0x0155, 0x0158, 0x2039, 0x203a, 0x0159, 0x0156,
+ 0x0157, 0x0160, 0x201a, 0x201e, 0x0161, 0x015a, 0x015b, 0x00c1,
+ 0x0164, 0x0165, 0x00cd, 0x017d, 0x017e, 0x016a, 0x00d3, 0x00d4,
+ 0x016b, 0x016e, 0x00da, 0x016f, 0x0170, 0x0171, 0x0172, 0x0173,
+ 0x00dd, 0x00fd, 0x0137, 0x017b, 0x0141, 0x017c, 0x0122, 0x02c7
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "MSZ_7795.3" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef msz_7795_3_h
+#define msz_7795_3_h
+
+#define cet_cs_name_msz_7795_3 "MSZ_7795.3"
+
+const char *cet_cs_alias_msz_7795_3[] =
+{
+ "MSZ_7795.3", "hu", "ISO646-HU", "iso-ir-86",
+ NULL
+};
+
+#define cet_ucs4_ofs_msz_7795_3 36
+#define cet_ucs4_cnt_msz_7795_3 92
+
+const int cet_ucs4_map_msz_7795_3[cet_ucs4_cnt_msz_7795_3] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x00c1, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00c9,
+ 0x00d6, 0x00dc, 0x005e, 0x005f, 0x00e1, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00e9,
+ 0x00f6, 0x00fc, 0x02dd, 0x007f
+};
+
+#define cet_ucs4_to_msz_7795_3_ct 10
+
+const cet_ucs4_link_t cet_ucs4_to_msz_7795_3_links[cet_ucs4_to_msz_7795_3_ct] =
+{
+ {0x00a4, 0x24} /* sign */,
+ {0x00c1, 0x40} /* capital letter a with acute */,
+ {0x00c9, 0x5b} /* capital letter e with acute */,
+ {0x00d6, 0x5c} /* capital letter o with diaeresis */,
+ {0x00dc, 0x5d} /* capital letter u with diaeresis */,
+ {0x00e1, 0x60} /* small letter a with acute */,
+ {0x00e9, 0x7b} /* small letter e with acute */,
+ {0x00f6, 0x7c} /* small letter o with diaeresis */,
+ {0x00fc, 0x7d} /* small letter u with diaeresis */,
+ {0x02dd, 0x7e} /* acute accent */
+};
+
+/*
+#define cet_ucs4_to_msz_7795_3_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_msz_7795_3_extra[cet_ucs4_to_msz_7795_3_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_msz_7795_3 = /* defined in cet.h */
+{
+ cet_cs_name_msz_7795_3, /* name of character set */
+ cet_cs_alias_msz_7795_3, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_msz_7795_3, /* char to UCS-4 value table */
+ cet_ucs4_ofs_msz_7795_3, /* first non standard character */
+ cet_ucs4_cnt_msz_7795_3, /* number of values in table */
+
+ cet_ucs4_to_msz_7795_3_links, /* UCS-4 to char links */
+ cet_ucs4_to_msz_7795_3_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int msz_7795_3_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00c1, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c9, 0x00d6, 0x00dc, 0x005e, 0x005f,
+ 0x00e1, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e9, 0x00f6, 0x00fc, 0x02dd, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "NATS-DANO" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef nats_dano_h
+#define nats_dano_h
+
+#define cet_cs_name_nats_dano "NATS-DANO"
+
+const char *cet_cs_alias_nats_dano[] =
+{
+ "NATS-DANO", "iso-ir-9-1", NULL
+};
+
+#define cet_ucs4_ofs_nats_dano 34
+#define cet_ucs4_cnt_nats_dano 94
+
+const int cet_ucs4_map_nats_dano[cet_ucs4_cnt_nats_dano] =
+{
+ 0x00ab, 0x00bb, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029,
+ 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031,
+ 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039,
+ 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0xe018, 0x0041,
+ 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049,
+ 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051,
+ 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059,
+ 0x005a, 0x00c6, 0x00d8, 0x00c5, 0x25a0, 0x005f, 0xe019, 0x0061,
+ 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069,
+ 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071,
+ 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079,
+ 0x007a, 0x00e6, 0x00f8, 0x00e5, 0x2013, 0x007f
+};
+
+#define cet_ucs4_to_nats_dano_ct 12
+
+const cet_ucs4_link_t cet_ucs4_to_nats_dano_links[cet_ucs4_to_nats_dano_ct] =
+{
+ {0x00ab, 0x22} /* double angle quotation mark */,
+ {0x00bb, 0x23} /* double angle quotation mark */,
+ {0x00c5, 0x5d} /* capital letter a with ring above */,
+ {0x00c6, 0x5b} /* capital letter ae */,
+ {0x00d8, 0x5c} /* capital letter o with stroke */,
+ {0x00e5, 0x7d} /* small letter a with ring above */,
+ {0x00e6, 0x7b} /* small letter ae */,
+ {0x00f8, 0x7c} /* small letter o with stroke */,
+ {0x2013, 0x7e} /* dash */,
+ {0x25a0, 0x5e} /* square */,
+ {0xe018, 0x40} /* space a (iso-ir-8-1 064) */,
+ {0xe019, 0x60} /* space b (iso-ir-8-1 096) */
+};
+
+/*
+#define cet_ucs4_to_nats_dano_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_nats_dano_extra[cet_ucs4_to_nats_dano_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_nats_dano = /* defined in cet.h */
+{
+ cet_cs_name_nats_dano, /* name of character set */
+ cet_cs_alias_nats_dano, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_nats_dano, /* char to UCS-4 value table */
+ cet_ucs4_ofs_nats_dano, /* first non standard character */
+ cet_ucs4_cnt_nats_dano, /* number of values in table */
+
+ cet_ucs4_to_nats_dano_links, /* UCS-4 to char links */
+ cet_ucs4_to_nats_dano_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int nats_dano_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x00ab, 0x00bb, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0xe018, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c6, 0x00d8, 0x00c5, 0x25a0, 0x005f,
+ 0xe019, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e6, 0x00f8, 0x00e5, 0x2013, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "NATS-SEFI" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef nats_sefi_h
+#define nats_sefi_h
+
+#define cet_cs_name_nats_sefi "NATS-SEFI"
+
+const char *cet_cs_alias_nats_sefi[] =
+{
+ "NATS-SEFI", "iso-ir-8-1", NULL
+};
+
+#define cet_ucs4_ofs_nats_sefi 64
+#define cet_ucs4_cnt_nats_sefi 64
+
+const int cet_ucs4_map_nats_sefi[cet_ucs4_cnt_nats_sefi] =
+{
+ 0xe018, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c4, 0x00d6, 0x00c5, 0x25a0, 0x005f,
+ 0xe019, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e4, 0x00f6, 0x00e5, 0x2013, 0x007f
+};
+
+#define cet_ucs4_to_nats_sefi_ct 10
+
+const cet_ucs4_link_t cet_ucs4_to_nats_sefi_links[cet_ucs4_to_nats_sefi_ct] =
+{
+ {0x00c4, 0x5b} /* capital letter a with diaeresis */,
+ {0x00c5, 0x5d} /* capital letter a with ring above */,
+ {0x00d6, 0x5c} /* capital letter o with diaeresis */,
+ {0x00e4, 0x7b} /* small letter a with diaeresis */,
+ {0x00e5, 0x7d} /* small letter a with ring above */,
+ {0x00f6, 0x7c} /* small letter o with diaeresis */,
+ {0x2013, 0x7e} /* dash */,
+ {0x25a0, 0x5e} /* square */,
+ {0xe018, 0x40} /* space a (iso-ir-8-1 064) */,
+ {0xe019, 0x60} /* space b (iso-ir-8-1 096) */
+};
+
+/*
+#define cet_ucs4_to_nats_sefi_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_nats_sefi_extra[cet_ucs4_to_nats_sefi_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_nats_sefi = /* defined in cet.h */
+{
+ cet_cs_name_nats_sefi, /* name of character set */
+ cet_cs_alias_nats_sefi, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_nats_sefi, /* char to UCS-4 value table */
+ cet_ucs4_ofs_nats_sefi, /* first non standard character */
+ cet_ucs4_cnt_nats_sefi, /* number of values in table */
+
+ cet_ucs4_to_nats_sefi_links, /* UCS-4 to char links */
+ cet_ucs4_to_nats_sefi_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int nats_sefi_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0xe018, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c4, 0x00d6, 0x00c5, 0x25a0, 0x005f,
+ 0xe019, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e4, 0x00f6, 0x00e5, 0x2013, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "NC_NC00-10" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef nc_nc00_10_h
+#define nc_nc00_10_h
+
+#define cet_cs_name_nc_nc00_10 "NC_NC00-10"
+
+const char *cet_cs_alias_nc_nc00_10[] =
+{
+ "NC_NC00-10", "cuba", "ISO646-CU", "iso-ir-151",
+ "NC_NC00-10:81", NULL
+};
+
+#define cet_ucs4_ofs_nc_nc00_10 36
+#define cet_ucs4_cnt_nc_nc00_10 92
+
+const int cet_ucs4_map_nc_nc00_10[cet_ucs4_cnt_nc_nc00_10] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00a1,
+ 0x00d1, 0x005d, 0x00bf, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00b4,
+ 0x00f1, 0x005b, 0x00a8, 0x007f
+};
+
+#define cet_ucs4_to_nc_nc00_10_ct 8
+
+const cet_ucs4_link_t cet_ucs4_to_nc_nc00_10_links[cet_ucs4_to_nc_nc00_10_ct] =
+{
+ {0x005b, 0x7d} /* square bracket */,
+ {0x00a1, 0x5b} /* exclamation mark */,
+ {0x00a4, 0x24} /* sign */,
+ {0x00a8, 0x7e} /* diaeresis */,
+ {0x00b4, 0x7b} /* accent */,
+ {0x00bf, 0x5e} /* question mark */,
+ {0x00d1, 0x5c} /* capital letter n with tilde */,
+ {0x00f1, 0x7c} /* small letter n with tilde */
+};
+
+/*
+#define cet_ucs4_to_nc_nc00_10_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_nc_nc00_10_extra[cet_ucs4_to_nc_nc00_10_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_nc_nc00_10 = /* defined in cet.h */
+{
+ cet_cs_name_nc_nc00_10, /* name of character set */
+ cet_cs_alias_nc_nc00_10, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_nc_nc00_10, /* char to UCS-4 value table */
+ cet_ucs4_ofs_nc_nc00_10, /* first non standard character */
+ cet_ucs4_cnt_nc_nc00_10, /* number of values in table */
+
+ cet_ucs4_to_nc_nc00_10_links, /* UCS-4 to char links */
+ cet_ucs4_to_nc_nc00_10_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int nc_nc00_10_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00a1, 0x00d1, 0x005d, 0x00bf, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00b4, 0x00f1, 0x005b, 0x00a8, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "NeXTSTEP" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef nextstep_h
+#define nextstep_h
+
+#define cet_cs_name_nextstep "NeXTSTEP"
+
+const char *cet_cs_alias_nextstep[] =
+{
+ "NeXTSTEP", "next", NULL
+};
+
+#define cet_ucs4_ofs_nextstep 128
+#define cet_ucs4_cnt_nextstep 126
+
+const int cet_ucs4_map_nextstep[cet_ucs4_cnt_nextstep] =
+{
+ 0x00a0, 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d9,
+ 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00b5, 0x00d7, 0x00f7,
+ 0x00a9, 0x00a1, 0x00a2, 0x00a3, 0x2044, 0x00a5, 0x0192, 0x00a7,
+ 0x00a4, -1, 0x201c, 0x00ab, -1, -1, 0xfb01, 0xfb02,
+ 0x00ae, 0x2013, 0x2020, 0x2021, 0x00b7, 0x00a6, 0x00b6, 0x2022,
+ -1, -1, 0x201d, 0x00bb, 0x2026, 0x2030, 0x00ac, 0x00bf,
+ 0x00b9, 0x02cb, 0x00b4, 0x02c6, 0x02dc, 0x00af, 0x02d8, 0x02d9,
+ 0x00a8, 0x00b2, 0x02da, 0x00b8, 0x00b3, 0x02dd, 0x02db, 0x02c7,
+ 0x2014, 0x00b1, 0x00bc, 0x00bd, 0x00be, 0x00e0, 0x00e1, 0x00e2,
+ 0x00e3, 0x00e4, 0x00e5, 0x00e7, 0x00e8, 0x00e9, 0x00ea, 0x00eb,
+ 0x00ec, 0x00c6, 0x00ed, 0x00aa, 0x00ee, 0x00ef, 0x00f0, 0x00f1,
+ 0x0141, 0x00d8, 0x0152, 0x00ba, 0x00f2, 0x00f3, 0x00f4, 0x00f5,
+ 0x00f6, 0x00e6, 0x00f9, 0x00fa, 0x00fb, 0x0131, 0x00fc, 0x00fd,
+ 0x0142, 0x00f8, 0x0153, 0x00df, 0x00fe, 0x00ff
+};
+
+#define cet_ucs4_to_nextstep_ct 112
+
+const cet_ucs4_link_t cet_ucs4_to_nextstep_links[cet_ucs4_to_nextstep_ct] =
+{
+ {0x00a0, 0x80} /* space */,
+ {0x00a4, 0xa8} /* sign */,
+ {0x00a6, 0xb5} /* bar */,
+ {0x00a8, 0xc8} /* diaeresis */,
+ {0x00a9, 0xa0} /* sign */,
+ {0x00aa, 0xe3} /* ordinal indicator */,
+ {0x00ac, 0xbe} /* sign */,
+ {0x00ae, 0xb0} /* sign */,
+ {0x00af, 0xc5} /* macron */,
+ {0x00b1, 0xd1} /* sign */,
+ {0x00b2, 0xc9} /* two */,
+ {0x00b3, 0xcc} /* three */,
+ {0x00b4, 0xc2} /* accent */,
+ {0x00b5, 0x9d} /* sign */,
+ {0x00b7, 0xb4} /* dot */,
+ {0x00b8, 0xcb} /* cedilla */,
+ {0x00b9, 0xc0} /* one */,
+ {0x00ba, 0xeb} /* ordinal indicator */,
+ {0x00bc, 0xd2} /* fraction one quarter */,
+ {0x00bd, 0xd3} /* fraction one half */,
+ {0x00be, 0xd4} /* fraction three quarters */,
+ {0x00c0, 0x81} /* capital letter a with grave */,
+ {0x00c1, 0x82} /* capital letter a with acute */,
+ {0x00c2, 0x83} /* capital letter a with circumflex */,
+ {0x00c3, 0x84} /* capital letter a with tilde */,
+ {0x00c4, 0x85} /* capital letter a with diaeresis */,
+ {0x00c5, 0x86} /* capital letter a with ring above */,
+ {0x00c6, 0xe1} /* capital letter ae */,
+ {0x00c7, 0x87} /* capital letter c with cedilla */,
+ {0x00c8, 0x88} /* capital letter e with grave */,
+ {0x00c9, 0x89} /* capital letter e with acute */,
+ {0x00ca, 0x8a} /* capital letter e with circumflex */,
+ {0x00cb, 0x8b} /* capital letter e with diaeresis */,
+ {0x00cc, 0x8c} /* capital letter i with grave */,
+ {0x00cd, 0x8d} /* capital letter i with acute */,
+ {0x00ce, 0x8e} /* capital letter i with circumflex */,
+ {0x00cf, 0x8f} /* capital letter i with diaeresis */,
+ {0x00d0, 0x90} /* capital letter eth (icelandic) */,
+ {0x00d1, 0x91} /* capital letter n with tilde */,
+ {0x00d2, 0x92} /* capital letter o with grave */,
+ {0x00d3, 0x93} /* capital letter o with acute */,
+ {0x00d4, 0x94} /* capital letter o with circumflex */,
+ {0x00d5, 0x95} /* capital letter o with tilde */,
+ {0x00d6, 0x96} /* capital letter o with diaeresis */,
+ {0x00d7, 0x9e} /* sign */,
+ {0x00d8, 0xe9} /* capital letter o with stroke */,
+ {0x00d9, 0x97} /* capital letter u with grave */,
+ {0x00da, 0x98} /* capital letter u with acute */,
+ {0x00db, 0x99} /* capital letter u with circumflex */,
+ {0x00dc, 0x9a} /* capital letter u with diaeresis */,
+ {0x00dd, 0x9b} /* capital letter y with acute */,
+ {0x00de, 0x9c} /* capital letter thorn (icelandic) */,
+ {0x00df, 0xfb} /* small letter sharp s (german) */,
+ {0x00e0, 0xd5} /* small letter a with grave */,
+ {0x00e1, 0xd6} /* small letter a with acute */,
+ {0x00e2, 0xd7} /* small letter a with circumflex */,
+ {0x00e3, 0xd8} /* small letter a with tilde */,
+ {0x00e4, 0xd9} /* small letter a with diaeresis */,
+ {0x00e5, 0xda} /* small letter a with ring above */,
+ {0x00e6, 0xf1} /* small letter ae */,
+ {0x00e7, 0xdb} /* small letter c with cedilla */,
+ {0x00e8, 0xdc} /* small letter e with grave */,
+ {0x00e9, 0xdd} /* small letter e with acute */,
+ {0x00ea, 0xde} /* small letter e with circumflex */,
+ {0x00eb, 0xdf} /* small letter e with diaeresis */,
+ {0x00ec, 0xe0} /* small letter i with grave */,
+ {0x00ed, 0xe2} /* small letter i with acute */,
+ {0x00ee, 0xe4} /* small letter i with circumflex */,
+ {0x00ef, 0xe5} /* small letter i with diaeresis */,
+ {0x00f0, 0xe6} /* small letter eth (icelandic) */,
+ {0x00f1, 0xe7} /* small letter n with tilde */,
+ {0x00f2, 0xec} /* small letter o with grave */,
+ {0x00f3, 0xed} /* small letter o with acute */,
+ {0x00f4, 0xee} /* small letter o with circumflex */,
+ {0x00f5, 0xef} /* small letter o with tilde */,
+ {0x00f6, 0xf0} /* small letter o with diaeresis */,
+ {0x00f7, 0x9f} /* sign */,
+ {0x00f8, 0xf9} /* small letter o with stroke */,
+ {0x00f9, 0xf2} /* small letter u with grave */,
+ {0x00fa, 0xf3} /* small letter u with acute */,
+ {0x00fb, 0xf4} /* small letter u with circumflex */,
+ {0x00fc, 0xf6} /* small letter u with diaeresis */,
+ {0x00fd, 0xf7} /* small letter y with acute */,
+ {0x00fe, 0xfc} /* small letter thorn (icelandic) */,
+ {0x00ff, 0xfd} /* small letter y with diaeresis */,
+ {0x0131, 0xf5} /* small letter i dotless */,
+ {0x0141, 0xe8} /* capital letter l with stroke */,
+ {0x0142, 0xf8} /* small letter l with stroke */,
+ {0x0152, 0xea} /* capital ligature oe */,
+ {0x0153, 0xfa} /* small ligature oe */,
+ {0x0192, 0xa6} /* minuscule latine f hameçon */,
+ {0x02c6, 0xc3} /* modificative accent circonflexe */,
+ {0x02c7, 0xcf} /* caron */,
+ {0x02cb, 0xc1} /* modificative accent grave */,
+ {0x02d8, 0xc6} /* breve */,
+ {0x02d9, 0xc7} /* above */,
+ {0x02da, 0xca} /* above */,
+ {0x02db, 0xce} /* ogonek */,
+ {0x02dc, 0xc4} /* tilde */,
+ {0x02dd, 0xcd} /* acute accent */,
+ {0x2013, 0xb1} /* dash */,
+ {0x2014, 0xd0} /* dash */,
+ {0x201c, 0xaa} /* double quotation mark */,
+ {0x201d, 0xba} /* double quotation mark */,
+ {0x2020, 0xb2} /* dagger */,
+ {0x2021, 0xb3} /* dagger */,
+ {0x2022, 0xb7} /* puce */,
+ {0x2026, 0xbc} /* horizontal ellipsis */,
+ {0x2030, 0xbd} /* mille sign */,
+ {0x2044, 0xa4} /* slash */,
+ {0xfb01, 0xae} /* small ligature fi */,
+ {0xfb02, 0xaf} /* small ligature fl */
+};
+
+/*
+#define cet_ucs4_to_nextstep_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_nextstep_extra[cet_ucs4_to_nextstep_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_nextstep = /* defined in cet.h */
+{
+ cet_cs_name_nextstep, /* name of character set */
+ cet_cs_alias_nextstep, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_nextstep, /* char to UCS-4 value table */
+ cet_ucs4_ofs_nextstep, /* first non standard character */
+ cet_ucs4_cnt_nextstep, /* number of values in table */
+
+ cet_ucs4_to_nextstep_links, /* UCS-4 to char links */
+ cet_ucs4_to_nextstep_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int nextstep_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00a0, 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x00c4, 0x00c5, 0x00c7,
+ 0x00c8, 0x00c9, 0x00ca, 0x00cb, 0x00cc, 0x00cd, 0x00ce, 0x00cf,
+ 0x00d0, 0x00d1, 0x00d2, 0x00d3, 0x00d4, 0x00d5, 0x00d6, 0x00d9,
+ 0x00da, 0x00db, 0x00dc, 0x00dd, 0x00de, 0x00b5, 0x00d7, 0x00f7,
+ 0x00a9, 0x00a1, 0x00a2, 0x00a3, 0x2044, 0x00a5, 0x0192, 0x00a7,
+ 0x00a4, -1, 0x201c, 0x00ab, -1, -1, 0xfb01, 0xfb02,
+ 0x00ae, 0x2013, 0x2020, 0x2021, 0x00b7, 0x00a6, 0x00b6, 0x2022,
+ -1, -1, 0x201d, 0x00bb, 0x2026, 0x2030, 0x00ac, 0x00bf,
+ 0x00b9, 0x02cb, 0x00b4, 0x02c6, 0x02dc, 0x00af, 0x02d8, 0x02d9,
+ 0x00a8, 0x00b2, 0x02da, 0x00b8, 0x00b3, 0x02dd, 0x02db, 0x02c7,
+ 0x2014, 0x00b1, 0x00bc, 0x00bd, 0x00be, 0x00e0, 0x00e1, 0x00e2,
+ 0x00e3, 0x00e4, 0x00e5, 0x00e7, 0x00e8, 0x00e9, 0x00ea, 0x00eb,
+ 0x00ec, 0x00c6, 0x00ed, 0x00aa, 0x00ee, 0x00ef, 0x00f0, 0x00f1,
+ 0x0141, 0x00d8, 0x0152, 0x00ba, 0x00f2, 0x00f3, 0x00f4, 0x00f5,
+ 0x00f6, 0x00e6, 0x00f9, 0x00fa, 0x00fb, 0x0131, 0x00fc, 0x00fd,
+ 0x0142, 0x00f8, 0x0153, 0x00df, 0x00fe, 0x00ff, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "NF_Z_62-010" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef nf_z_62_010_h
+#define nf_z_62_010_h
+
+#define cet_cs_name_nf_z_62_010 "NF_Z_62-010"
+
+const char *cet_cs_alias_nf_z_62_010[] =
+{
+ "NF_Z_62-010", "fr", "ISO646-FR", "iso-ir-69",
+ NULL
+};
+
+#define cet_ucs4_ofs_nf_z_62_010 35
+#define cet_ucs4_cnt_nf_z_62_010 93
+
+const int cet_ucs4_map_nf_z_62_010[cet_ucs4_cnt_nf_z_62_010] =
+{
+ 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a,
+ 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032,
+ 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a,
+ 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x00e0, 0x0041, 0x0042,
+ 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+ 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+ 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+ 0x00b0, 0x00e7, 0x00a7, 0x005e, 0x005f, 0x00b5, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x00e9, 0x00f9, 0x00e8, 0x00a8, 0x007f
+};
+
+#define cet_ucs4_to_nf_z_62_010_ct 10
+
+const cet_ucs4_link_t cet_ucs4_to_nf_z_62_010_links[cet_ucs4_to_nf_z_62_010_ct] =
+{
+ {0x00a3, 0x23} /* sign */,
+ {0x00a7, 0x5d} /* sign */,
+ {0x00a8, 0x7e} /* diaeresis */,
+ {0x00b0, 0x5b} /* sign */,
+ {0x00b5, 0x60} /* sign */,
+ {0x00e0, 0x40} /* small letter a with grave */,
+ {0x00e7, 0x5c} /* small letter c with cedilla */,
+ {0x00e8, 0x7d} /* small letter e with grave */,
+ {0x00e9, 0x7b} /* small letter e with acute */,
+ {0x00f9, 0x7c} /* small letter u with grave */
+};
+
+/*
+#define cet_ucs4_to_nf_z_62_010_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_nf_z_62_010_extra[cet_ucs4_to_nf_z_62_010_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_nf_z_62_010 = /* defined in cet.h */
+{
+ cet_cs_name_nf_z_62_010, /* name of character set */
+ cet_cs_alias_nf_z_62_010, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_nf_z_62_010, /* char to UCS-4 value table */
+ cet_ucs4_ofs_nf_z_62_010, /* first non standard character */
+ cet_ucs4_cnt_nf_z_62_010, /* number of values in table */
+
+ cet_ucs4_to_nf_z_62_010_links, /* UCS-4 to char links */
+ cet_ucs4_to_nf_z_62_010_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int nf_z_62_010_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00e0, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00b0, 0x00e7, 0x00a7, 0x005e, 0x005f,
+ 0x00b5, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e9, 0x00f9, 0x00e8, 0x00a8, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "NF_Z_62-010_(1973)" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef nf_z_62_010__1973__h
+#define nf_z_62_010__1973__h
+
+#define cet_cs_name_nf_z_62_010__1973_ "NF_Z_62-010_(1973)"
+
+const char *cet_cs_alias_nf_z_62_010__1973_[] =
+{
+ "NF_Z_62-010_(1973)", "ISO646-FR1", "iso-ir-25", NULL
+};
+
+#define cet_ucs4_ofs_nf_z_62_010__1973_ 35
+#define cet_ucs4_cnt_nf_z_62_010__1973_ 93
+
+const int cet_ucs4_map_nf_z_62_010__1973_[cet_ucs4_cnt_nf_z_62_010__1973_] =
+{
+ 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a,
+ 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032,
+ 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a,
+ 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x00e0, 0x0041, 0x0042,
+ 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+ 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+ 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+ 0x00b0, 0x00e7, 0x00a7, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x00e9, 0x00f9, 0x00e8, 0x00a8, 0x007f
+};
+
+#define cet_ucs4_to_nf_z_62_010__1973__ct 9
+
+const cet_ucs4_link_t cet_ucs4_to_nf_z_62_010__1973__links[cet_ucs4_to_nf_z_62_010__1973__ct] =
+{
+ {0x00a3, 0x23} /* sign */,
+ {0x00a7, 0x5d} /* sign */,
+ {0x00a8, 0x7e} /* diaeresis */,
+ {0x00b0, 0x5b} /* sign */,
+ {0x00e0, 0x40} /* small letter a with grave */,
+ {0x00e7, 0x5c} /* small letter c with cedilla */,
+ {0x00e8, 0x7d} /* small letter e with grave */,
+ {0x00e9, 0x7b} /* small letter e with acute */,
+ {0x00f9, 0x7c} /* small letter u with grave */
+};
+
+/*
+#define cet_ucs4_to_nf_z_62_010__1973__extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_nf_z_62_010__1973__extra[cet_ucs4_to_nf_z_62_010__1973__extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_nf_z_62_010__1973_ = /* defined in cet.h */
+{
+ cet_cs_name_nf_z_62_010__1973_, /* name of character set */
+ cet_cs_alias_nf_z_62_010__1973_, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_nf_z_62_010__1973_, /* char to UCS-4 value table */
+ cet_ucs4_ofs_nf_z_62_010__1973_, /* first non standard character */
+ cet_ucs4_cnt_nf_z_62_010__1973_, /* number of values in table */
+
+ cet_ucs4_to_nf_z_62_010__1973__links, /* UCS-4 to char links */
+ cet_ucs4_to_nf_z_62_010__1973__ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int nf_z_62_010__1973__ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x00a3, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00e0, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00b0, 0x00e7, 0x00a7, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e9, 0x00f9, 0x00e8, 0x00a8, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "NS_4551-1" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ns_4551_1_h
+#define ns_4551_1_h
+
+#define cet_cs_name_ns_4551_1 "NS_4551-1"
+
+const char *cet_cs_alias_ns_4551_1[] =
+{
+ "NS_4551-1", "ISO646-NO", "iso-ir-60", "no",
+ NULL
+};
+
+#define cet_ucs4_ofs_ns_4551_1 91
+#define cet_ucs4_cnt_ns_4551_1 37
+
+const int cet_ucs4_map_ns_4551_1[cet_ucs4_cnt_ns_4551_1] =
+{
+ 0x00c6, 0x00d8, 0x00c5, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x00e6, 0x00f8, 0x00e5, 0x203e, 0x007f
+};
+
+#define cet_ucs4_to_ns_4551_1_ct 7
+
+const cet_ucs4_link_t cet_ucs4_to_ns_4551_1_links[cet_ucs4_to_ns_4551_1_ct] =
+{
+ {0x00c5, 0x5d} /* capital letter a with ring above */,
+ {0x00c6, 0x5b} /* capital letter ae */,
+ {0x00d8, 0x5c} /* capital letter o with stroke */,
+ {0x00e5, 0x7d} /* small letter a with ring above */,
+ {0x00e6, 0x7b} /* small letter ae */,
+ {0x00f8, 0x7c} /* small letter o with stroke */,
+ {0x203e, 0x7e} /* overline */
+};
+
+/*
+#define cet_ucs4_to_ns_4551_1_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ns_4551_1_extra[cet_ucs4_to_ns_4551_1_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ns_4551_1 = /* defined in cet.h */
+{
+ cet_cs_name_ns_4551_1, /* name of character set */
+ cet_cs_alias_ns_4551_1, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ns_4551_1, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ns_4551_1, /* first non standard character */
+ cet_ucs4_cnt_ns_4551_1, /* number of values in table */
+
+ cet_ucs4_to_ns_4551_1_links, /* UCS-4 to char links */
+ cet_ucs4_to_ns_4551_1_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ns_4551_1_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c6, 0x00d8, 0x00c5, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e6, 0x00f8, 0x00e5, 0x203e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "NS_4551-2" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef ns_4551_2_h
+#define ns_4551_2_h
+
+#define cet_cs_name_ns_4551_2 "NS_4551-2"
+
+const char *cet_cs_alias_ns_4551_2[] =
+{
+ "NS_4551-2", "ISO646-NO2", "iso-ir-61", "no2",
+ NULL
+};
+
+#define cet_ucs4_ofs_ns_4551_2 35
+#define cet_ucs4_cnt_ns_4551_2 93
+
+const int cet_ucs4_map_ns_4551_2[cet_ucs4_cnt_ns_4551_2] =
+{
+ 0x00a7, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a,
+ 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032,
+ 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a,
+ 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042,
+ 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a,
+ 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052,
+ 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a,
+ 0x00c6, 0x00d8, 0x00c5, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062,
+ 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a,
+ 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072,
+ 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a,
+ 0x00e6, 0x00f8, 0x00e5, 0x007c, 0x007f
+};
+
+#define cet_ucs4_to_ns_4551_2_ct 8
+
+const cet_ucs4_link_t cet_ucs4_to_ns_4551_2_links[cet_ucs4_to_ns_4551_2_ct] =
+{
+ {0x007c, 0x7e} /* line */,
+ {0x00a7, 0x23} /* sign */,
+ {0x00c5, 0x5d} /* capital letter a with ring above */,
+ {0x00c6, 0x5b} /* capital letter ae */,
+ {0x00d8, 0x5c} /* capital letter o with stroke */,
+ {0x00e5, 0x7d} /* small letter a with ring above */,
+ {0x00e6, 0x7b} /* small letter ae */,
+ {0x00f8, 0x7c} /* small letter o with stroke */
+};
+
+/*
+#define cet_ucs4_to_ns_4551_2_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_ns_4551_2_extra[cet_ucs4_to_ns_4551_2_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_ns_4551_2 = /* defined in cet.h */
+{
+ cet_cs_name_ns_4551_2, /* name of character set */
+ cet_cs_alias_ns_4551_2, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_ns_4551_2, /* char to UCS-4 value table */
+ cet_ucs4_ofs_ns_4551_2, /* first non standard character */
+ cet_ucs4_cnt_ns_4551_2, /* number of values in table */
+
+ cet_ucs4_to_ns_4551_2_links, /* UCS-4 to char links */
+ cet_ucs4_to_ns_4551_2_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int ns_4551_2_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x00a7, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c6, 0x00d8, 0x00c5, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e6, 0x00f8, 0x00e5, 0x007c, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "PT" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef pt_h
+#define pt_h
+
+#define cet_cs_name_pt "PT"
+
+const char *cet_cs_alias_pt[] =
+{
+ "PT", "ISO646-PT", "iso-ir-16", NULL
+};
+
+#define cet_ucs4_ofs_pt 64
+#define cet_ucs4_cnt_pt 64
+
+const int cet_ucs4_map_pt[cet_ucs4_cnt_pt] =
+{
+ 0x00a7, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c3, 0x00c7, 0x00d5, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e3, 0x00e7, 0x00f5, 0x00b0, 0x007f
+};
+
+#define cet_ucs4_to_pt_ct 8
+
+const cet_ucs4_link_t cet_ucs4_to_pt_links[cet_ucs4_to_pt_ct] =
+{
+ {0x00a7, 0x40} /* sign */,
+ {0x00b0, 0x7e} /* sign */,
+ {0x00c3, 0x5b} /* capital letter a with tilde */,
+ {0x00c7, 0x5c} /* capital letter c with cedilla */,
+ {0x00d5, 0x5d} /* capital letter o with tilde */,
+ {0x00e3, 0x7b} /* small letter a with tilde */,
+ {0x00e7, 0x7c} /* small letter c with cedilla */,
+ {0x00f5, 0x7d} /* small letter o with tilde */
+};
+
+/*
+#define cet_ucs4_to_pt_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_pt_extra[cet_ucs4_to_pt_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_pt = /* defined in cet.h */
+{
+ cet_cs_name_pt, /* name of character set */
+ cet_cs_alias_pt, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_pt, /* char to UCS-4 value table */
+ cet_ucs4_ofs_pt, /* first non standard character */
+ cet_ucs4_cnt_pt, /* number of values in table */
+
+ cet_ucs4_to_pt_links, /* UCS-4 to char links */
+ cet_ucs4_to_pt_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int pt_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00a7, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c3, 0x00c7, 0x00d5, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e3, 0x00e7, 0x00f5, 0x00b0, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "PT2" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef pt2_h
+#define pt2_h
+
+#define cet_cs_name_pt2 "PT2"
+
+const char *cet_cs_alias_pt2[] =
+{
+ "PT2", "ISO646-PT2", "iso-ir-84", NULL
+};
+
+#define cet_ucs4_ofs_pt2 64
+#define cet_ucs4_cnt_pt2 64
+
+const int cet_ucs4_map_pt2[cet_ucs4_cnt_pt2] =
+{
+ 0x00b4, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c3, 0x00c7, 0x00d5, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e3, 0x00e7, 0x00f5, 0x007e, 0x007f
+};
+
+#define cet_ucs4_to_pt2_ct 7
+
+const cet_ucs4_link_t cet_ucs4_to_pt2_links[cet_ucs4_to_pt2_ct] =
+{
+ {0x00b4, 0x40} /* accent */,
+ {0x00c3, 0x5b} /* capital letter a with tilde */,
+ {0x00c7, 0x5c} /* capital letter c with cedilla */,
+ {0x00d5, 0x5d} /* capital letter o with tilde */,
+ {0x00e3, 0x7b} /* small letter a with tilde */,
+ {0x00e7, 0x7c} /* small letter c with cedilla */,
+ {0x00f5, 0x7d} /* small letter o with tilde */
+};
+
+/*
+#define cet_ucs4_to_pt2_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_pt2_extra[cet_ucs4_to_pt2_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_pt2 = /* defined in cet.h */
+{
+ cet_cs_name_pt2, /* name of character set */
+ cet_cs_alias_pt2, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_pt2, /* char to UCS-4 value table */
+ cet_ucs4_ofs_pt2, /* first non standard character */
+ cet_ucs4_cnt_pt2, /* number of values in table */
+
+ cet_ucs4_to_pt2_links, /* UCS-4 to char links */
+ cet_ucs4_to_pt2_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int pt2_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00b4, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c3, 0x00c7, 0x00d5, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e3, 0x00e7, 0x00f5, 0x007e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "sami" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef sami_h
+#define sami_h
+
+#define cet_cs_name_sami "sami"
+
+const char *cet_cs_alias_sami[] =
+{
+ "sami", "iso-ir-158", "lap", "latin-lap",
+ NULL
+};
+
+#define cet_ucs4_ofs_sami 160
+#define cet_ucs4_cnt_sami 80
+
+const int cet_ucs4_map_sami[cet_ucs4_cnt_sami] =
+{
+ 0x00b4, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x02bb, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x0102, 0x00c0, 0x01de, 0x01e0, 0x01e2, 0x0114, 0x00c8, 0x01e4,
+ 0x01e6, 0x01e8, 0x014e, 0x00d2, 0x01ea, 0x01ec, 0x01b7, 0x01ee,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x0103, 0x00e0, 0x01df, 0x01e1, 0x01e3, 0x0115, 0x00e8, 0x01e5,
+ 0x01e7, 0x01e9, 0x014f, 0x00f2, 0x01eb, 0x01ed, 0x0292, 0x01ef
+};
+
+#define cet_ucs4_to_sami_ct 34
+
+const cet_ucs4_link_t cet_ucs4_to_sami_links[cet_ucs4_to_sami_ct] =
+{
+ {0x00b4, 0xa0} /* accent */,
+ {0x00c0, 0xc1} /* capital letter a with grave */,
+ {0x00c8, 0xc6} /* capital letter e with grave */,
+ {0x00d2, 0xcb} /* capital letter o with grave */,
+ {0x00e0, 0xe1} /* small letter a with grave */,
+ {0x00e8, 0xe6} /* small letter e with grave */,
+ {0x00f2, 0xeb} /* small letter o with grave */,
+ {0x0102, 0xc0} /* capital letter a with breve */,
+ {0x0103, 0xe0} /* small letter a with breve */,
+ {0x0114, 0xc5} /* capital letter e with breve */,
+ {0x0115, 0xe5} /* small letter e with breve */,
+ {0x014e, 0xca} /* capital letter o with breve */,
+ {0x014f, 0xea} /* small letter o with breve */,
+ {0x01b7, 0xce} /* capital letter ezh */,
+ {0x01de, 0xc2} /* capital letter a with diaeresis and macron */,
+ {0x01df, 0xe2} /* small letter a with diaeresis and macron */,
+ {0x01e0, 0xc3} /* capital letter a with dot above and macron */,
+ {0x01e1, 0xe3} /* small letter a with dot above and macron */,
+ {0x01e2, 0xc4} /* capital letter ae with macron */,
+ {0x01e3, 0xe4} /* small letter ae with macron */,
+ {0x01e4, 0xc7} /* capital letter g with stroke */,
+ {0x01e5, 0xe7} /* small letter g with stroke */,
+ {0x01e6, 0xc8} /* capital letter g with caron */,
+ {0x01e7, 0xe8} /* small letter g with caron */,
+ {0x01e8, 0xc9} /* capital letter k with caron */,
+ {0x01e9, 0xe9} /* small letter k with caron */,
+ {0x01ea, 0xcc} /* capital letter o with ogonek */,
+ {0x01eb, 0xec} /* small letter o with ogonek */,
+ {0x01ec, 0xcd} /* capital letter o with ogonek and macron */,
+ {0x01ed, 0xed} /* small letter o with ogonek and macron */,
+ {0x01ee, 0xcf} /* capital letter ezh with caron */,
+ {0x01ef, 0xef} /* small letter ezh with caron */,
+ {0x0292, 0xee} /* small letter ezh (iso-ir-158 142) */,
+ {0x02bb, 0xb0} /* letter left half ring */
+};
+
+/*
+#define cet_ucs4_to_sami_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_sami_extra[cet_ucs4_to_sami_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_sami = /* defined in cet.h */
+{
+ cet_cs_name_sami, /* name of character set */
+ cet_cs_alias_sami, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_sami, /* char to UCS-4 value table */
+ cet_ucs4_ofs_sami, /* first non standard character */
+ cet_ucs4_cnt_sami, /* number of values in table */
+
+ cet_ucs4_to_sami_links, /* UCS-4 to char links */
+ cet_ucs4_to_sami_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int sami_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, 0x0086, 0x0087,
+ 0x0088, 0x0089, 0x008a, 0x008b, 0x008c, 0x008d, 0x008e, 0x008f,
+ 0x0090, 0x0091, 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097,
+ 0x0098, 0x0099, 0x009a, 0x009b, 0x009c, 0x009d, 0x009e, 0x009f,
+ 0x00b4, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x02bb, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x0102, 0x00c0, 0x01de, 0x01e0, 0x01e2, 0x0114, 0x00c8, 0x01e4,
+ 0x01e6, 0x01e8, 0x014e, 0x00d2, 0x01ea, 0x01ec, 0x01b7, 0x01ee,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ 0x0103, 0x00e0, 0x01df, 0x01e1, 0x01e3, 0x0115, 0x00e8, 0x01e5,
+ 0x01e7, 0x01e9, 0x014f, 0x00f2, 0x01eb, 0x01ed, 0x0292, 0x01ef,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "SEN_850200_B" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef sen_850200_b_h
+#define sen_850200_b_h
+
+#define cet_cs_name_sen_850200_b "SEN_850200_B"
+
+const char *cet_cs_alias_sen_850200_b[] =
+{
+ "SEN_850200_B", "FI", "ISO646-FI", "ISO646-SE",
+ "iso-ir-10", "se", "SS636127", NULL
+};
+
+#define cet_ucs4_ofs_sen_850200_b 36
+#define cet_ucs4_cnt_sen_850200_b 92
+
+const int cet_ucs4_map_sen_850200_b[cet_ucs4_cnt_sen_850200_b] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00c4,
+ 0x00d6, 0x00c5, 0x005e, 0x005f, 0x0060, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00e4,
+ 0x00f6, 0x00e5, 0x203e, 0x007f
+};
+
+#define cet_ucs4_to_sen_850200_b_ct 8
+
+const cet_ucs4_link_t cet_ucs4_to_sen_850200_b_links[cet_ucs4_to_sen_850200_b_ct] =
+{
+ {0x00a4, 0x24} /* sign */,
+ {0x00c4, 0x5b} /* capital letter a with diaeresis */,
+ {0x00c5, 0x5d} /* capital letter a with ring above */,
+ {0x00d6, 0x5c} /* capital letter o with diaeresis */,
+ {0x00e4, 0x7b} /* small letter a with diaeresis */,
+ {0x00e5, 0x7d} /* small letter a with ring above */,
+ {0x00f6, 0x7c} /* small letter o with diaeresis */,
+ {0x203e, 0x7e} /* overline */
+};
+
+/*
+#define cet_ucs4_to_sen_850200_b_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_sen_850200_b_extra[cet_ucs4_to_sen_850200_b_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_sen_850200_b = /* defined in cet.h */
+{
+ cet_cs_name_sen_850200_b, /* name of character set */
+ cet_cs_alias_sen_850200_b, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_sen_850200_b, /* char to UCS-4 value table */
+ cet_ucs4_ofs_sen_850200_b, /* first non standard character */
+ cet_ucs4_cnt_sen_850200_b, /* number of values in table */
+
+ cet_ucs4_to_sen_850200_b_links, /* UCS-4 to char links */
+ cet_ucs4_to_sen_850200_b_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int sen_850200_b_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c4, 0x00d6, 0x00c5, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e4, 0x00f6, 0x00e5, 0x203e, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "SEN_850200_C" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef sen_850200_c_h
+#define sen_850200_c_h
+
+#define cet_cs_name_sen_850200_c "SEN_850200_C"
+
+const char *cet_cs_alias_sen_850200_c[] =
+{
+ "SEN_850200_C", "ISO646-SE2", "iso-ir-11", "se2",
+ NULL
+};
+
+#define cet_ucs4_ofs_sen_850200_c 36
+#define cet_ucs4_cnt_sen_850200_c 92
+
+const int cet_ucs4_map_sen_850200_c[cet_ucs4_cnt_sen_850200_c] =
+{
+ 0x00a4, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, 0x002a, 0x002b,
+ 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031, 0x0032, 0x0033,
+ 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039, 0x003a, 0x003b,
+ 0x003c, 0x003d, 0x003e, 0x003f, 0x00c9, 0x0041, 0x0042, 0x0043,
+ 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049, 0x004a, 0x004b,
+ 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051, 0x0052, 0x0053,
+ 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059, 0x005a, 0x00c4,
+ 0x00d6, 0x00c5, 0x00dc, 0x005f, 0x00e9, 0x0061, 0x0062, 0x0063,
+ 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, 0x006a, 0x006b,
+ 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071, 0x0072, 0x0073,
+ 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079, 0x007a, 0x00e4,
+ 0x00f6, 0x00e5, 0x00fc, 0x007f
+};
+
+#define cet_ucs4_to_sen_850200_c_ct 11
+
+const cet_ucs4_link_t cet_ucs4_to_sen_850200_c_links[cet_ucs4_to_sen_850200_c_ct] =
+{
+ {0x00a4, 0x24} /* sign */,
+ {0x00c4, 0x5b} /* capital letter a with diaeresis */,
+ {0x00c5, 0x5d} /* capital letter a with ring above */,
+ {0x00c9, 0x40} /* capital letter e with acute */,
+ {0x00d6, 0x5c} /* capital letter o with diaeresis */,
+ {0x00dc, 0x5e} /* capital letter u with diaeresis */,
+ {0x00e4, 0x7b} /* small letter a with diaeresis */,
+ {0x00e5, 0x7d} /* small letter a with ring above */,
+ {0x00e9, 0x60} /* small letter e with acute */,
+ {0x00f6, 0x7c} /* small letter o with diaeresis */,
+ {0x00fc, 0x7e} /* small letter u with diaeresis */
+};
+
+/*
+#define cet_ucs4_to_sen_850200_c_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_sen_850200_c_extra[cet_ucs4_to_sen_850200_c_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_sen_850200_c = /* defined in cet.h */
+{
+ cet_cs_name_sen_850200_c, /* name of character set */
+ cet_cs_alias_sen_850200_c, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_sen_850200_c, /* char to UCS-4 value table */
+ cet_ucs4_ofs_sen_850200_c, /* first non standard character */
+ cet_ucs4_cnt_sen_850200_c, /* number of values in table */
+
+ cet_ucs4_to_sen_850200_c_links, /* UCS-4 to char links */
+ cet_ucs4_to_sen_850200_c_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int sen_850200_c_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, 0x0006, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x00a4, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x00c9, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x00c4, 0x00d6, 0x00c5, 0x00dc, 0x005f,
+ 0x00e9, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x00e4, 0x00f6, 0x00e5, 0x00fc, 0x007f,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "TCVN" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef tcvn_h
+#define tcvn_h
+
+#define cet_cs_name_tcvn "TCVN"
+
+const char *cet_cs_alias_tcvn[] =
+{
+ "TCVN", "TCVN5712-1", "TCVN5712-1:1993", "TCVN-5712",
+ NULL
+};
+
+#define cet_ucs4_ofs_tcvn 1
+#define cet_ucs4_cnt_tcvn 255
+
+const int cet_ucs4_map_tcvn[cet_ucs4_cnt_tcvn] =
+{
+ 0x00da, 0x1ee4, 0x0003, 0x1eea, 0x1eec, 0x1eee, 0x0007, 0x0008,
+ 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f, 0x0010,
+ 0x1ee8, 0x1ef0, 0x1ef2, 0x1ef6, 0x1ef8, 0x00dd, 0x1ef4, 0x0018,
+ 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f, 0x0020,
+ 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028,
+ 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030,
+ 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038,
+ 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x0040,
+ 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048,
+ 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050,
+ 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058,
+ 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060,
+ 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068,
+ 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070,
+ 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078,
+ 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f, 0x00c0,
+ 0x1ea2, 0x00c3, 0x00c1, 0x1ea0, 0x1eb6, 0x1eac, 0x00c8, 0x1eba,
+ 0x1ebc, 0x00c9, 0x1eb8, 0x1ec6, 0x00cc, 0x1ec8, 0x0128, 0x00cd,
+ 0x1eca, 0x00d2, 0x1ece, 0x00d5, 0x00d3, 0x1ecc, 0x1ed8, 0x1edc,
+ 0x1ede, 0x1ee0, 0x1eda, 0x1ee2, 0x00d9, 0x1ee6, 0x0168, -1,
+ 0x0102, 0x00c2, 0x00ca, 0x00d4, 0x01a0, 0x01af, 0x0110, 0x0103,
+ 0x00e2, 0x00ea, 0x00f4, 0x01a1, 0x01b0, 0x0111, 0x1eb0, -1,
+ -1, -1, -1, -1, 0x00e0, 0x1ea3, 0x00e3, 0x00e1,
+ 0x1ea1, 0x1eb2, 0x1eb1, 0x1eb3, 0x1eb5, 0x1eaf, 0x1eb4, 0x1eae,
+ 0x1ea6, 0x1ea8, 0x1eaa, 0x1ea4, 0x1ec0, 0x1eb7, 0x1ea7, 0x1ea9,
+ 0x1eab, 0x1ea5, 0x1ead, 0x00e8, 0x1ec2, 0x1ebb, 0x1ebd, 0x00e9,
+ 0x1eb9, 0x1ec1, 0x1ec3, 0x1ec5, 0x1ebf, 0x1ec7, 0x00ec, 0x1ec9,
+ 0x1ec4, 0x1ebe, 0x1ed2, 0x0129, 0x00ed, 0x1ecb, 0x00f2, 0x1ed4,
+ 0x1ecf, 0x00f5, 0x00f3, 0x1ecd, 0x1ed3, 0x1ed5, 0x1ed7, 0x1ed1,
+ 0x1ed9, 0x1edd, 0x1edf, 0x1ee1, 0x1edb, 0x1ee3, 0x00f9, 0x1ed6,
+ 0x1ee7, 0x0169, 0x00fa, 0x1ee5, 0x1eeb, 0x1eed, 0x1eef, 0x1ee9,
+ 0x1ef1, 0x1ef3, 0x1ef7, 0x1ef9, 0x00fd, 0x1ef5, 0x1ed0
+};
+
+#define cet_ucs4_to_tcvn_ct 133
+
+const cet_ucs4_link_t cet_ucs4_to_tcvn_links[cet_ucs4_to_tcvn_ct] =
+{
+ {0x00c0, 0x80} /* capital letter a with grave */,
+ {0x00c1, 0x83} /* capital letter a with acute */,
+ {0x00c2, 0xa2} /* capital letter a with circumflex */,
+ {0x00c3, 0x82} /* capital letter a with tilde */,
+ {0x00c8, 0x87} /* capital letter e with grave */,
+ {0x00c9, 0x8a} /* capital letter e with acute */,
+ {0x00ca, 0xa3} /* capital letter e with circumflex */,
+ {0x00cc, 0x8d} /* capital letter i with grave */,
+ {0x00cd, 0x90} /* capital letter i with acute */,
+ {0x00d2, 0x92} /* capital letter o with grave */,
+ {0x00d3, 0x95} /* capital letter o with acute */,
+ {0x00d4, 0xa4} /* capital letter o with circumflex */,
+ {0x00d5, 0x94} /* capital letter o with tilde */,
+ {0x00d9, 0x9d} /* capital letter u with grave */,
+ {0x00da, 0x01} /* capital letter u with acute */,
+ {0x00dd, 0x16} /* capital letter y with acute */,
+ {0x00e0, 0xb5} /* small letter a with grave */,
+ {0x00e1, 0xb8} /* small letter a with acute */,
+ {0x00e2, 0xa9} /* small letter a with circumflex */,
+ {0x00e3, 0xb7} /* small letter a with tilde */,
+ {0x00e8, 0xcc} /* small letter e with grave */,
+ {0x00e9, 0xd0} /* small letter e with acute */,
+ {0x00ea, 0xaa} /* small letter e with circumflex */,
+ {0x00ec, 0xd7} /* small letter i with grave */,
+ {0x00ed, 0xdd} /* small letter i with acute */,
+ {0x00f2, 0xdf} /* small letter o with grave */,
+ {0x00f3, 0xe3} /* small letter o with acute */,
+ {0x00f4, 0xab} /* small letter o with circumflex */,
+ {0x00f5, 0xe2} /* small letter o with tilde */,
+ {0x00f9, 0xef} /* small letter u with grave */,
+ {0x00fa, 0xf3} /* small letter u with acute */,
+ {0x0102, 0xa1} /* capital letter a with breve */,
+ {0x0103, 0xa8} /* small letter a with breve */,
+ {0x0110, 0xa7} /* capital letter d with stroke */,
+ {0x0111, 0xae} /* small letter d with stroke */,
+ {0x0128, 0x8f} /* capital letter i with tilde */,
+ {0x0129, 0xdc} /* small letter i with tilde */,
+ {0x0168, 0x9f} /* capital letter u with tilde */,
+ {0x0169, 0xf2} /* small letter u with tilde */,
+ {0x01a0, 0xa5} /* capital letter o with horn */,
+ {0x01a1, 0xac} /* small letter o with horn */,
+ {0x01af, 0xa6} /* capital letter u with horn */,
+ {0x01b0, 0xad} /* small letter u with horn */,
+ {0x1ea0, 0x84} /* capital letter a with dot below */,
+ {0x1ea1, 0xb9} /* small letter a with dot below */,
+ {0x1ea2, 0x81} /* capital letter a with hook above */,
+ {0x1ea3, 0xb6} /* small letter a with hook above */,
+ {0x1ea4, 0xc4} /* capital letter a with circumflex and acute */,
+ {0x1ea5, 0xca} /* small letter a with circumflex and acute */,
+ {0x1ea6, 0xc1} /* capital letter a with circumflex and grave */,
+ {0x1ea7, 0xc7} /* small letter a with circumflex and grave */,
+ {0x1ea8, 0xc2} /* capital letter a with circumflex and hook above */,
+ {0x1ea9, 0xc8} /* small letter a with circumflex and hook above */,
+ {0x1eaa, 0xc3} /* capital letter a with circumflex and tilde */,
+ {0x1eab, 0xc9} /* small letter a with circumflex and tilde */,
+ {0x1eac, 0x86} /* latine a accent circonflexe et point souscrit */,
+ {0x1ead, 0xcb} /* latine a accent circonflexe et point souscrit */,
+ {0x1eae, 0xc0} /* capital letter a with breve and acute */,
+ {0x1eaf, 0xbe} /* small letter a with breve and acute */,
+ {0x1eb0, 0xaf} /* capital letter a with breve and grave */,
+ {0x1eb1, 0xbb} /* small letter a with breve and grave */,
+ {0x1eb2, 0xba} /* capital letter a with breve and hook above */,
+ {0x1eb3, 0xbc} /* small letter a with breve and hook above */,
+ {0x1eb4, 0xbf} /* capital letter a with breve and tilde */,
+ {0x1eb5, 0xbd} /* small letter a with breve and tilde */,
+ {0x1eb6, 0x85} /* latine a brève et point souscrit */,
+ {0x1eb7, 0xc6} /* latine a brève et point souscrit */,
+ {0x1eb8, 0x8b} /* capital letter e with dot below */,
+ {0x1eb9, 0xd1} /* small letter e with dot below */,
+ {0x1eba, 0x88} /* capital letter e with hook above */,
+ {0x1ebb, 0xce} /* small letter e with hook above */,
+ {0x1ebc, 0x89} /* capital letter e with tilde */,
+ {0x1ebd, 0xcf} /* small letter e with tilde */,
+ {0x1ebe, 0xda} /* capital letter e with circumflex and acute */,
+ {0x1ebf, 0xd5} /* small letter e with circumflex and acute */,
+ {0x1ec0, 0xc5} /* capital letter e with circumflex and grave */,
+ {0x1ec1, 0xd2} /* small letter e with circumflex and grave */,
+ {0x1ec2, 0xcd} /* capital letter e with circumflex and hook above */,
+ {0x1ec3, 0xd3} /* small letter e with circumflex and hook above */,
+ {0x1ec4, 0xd9} /* capital letter e with circumflex and tilde */,
+ {0x1ec5, 0xd4} /* small letter e with circumflex and tilde */,
+ {0x1ec6, 0x8c} /* latine e accent circonflexe et point souscrit */,
+ {0x1ec7, 0xd6} /* latine e accent circonflexe et point souscrit */,
+ {0x1ec8, 0x8e} /* capital letter i with hook above */,
+ {0x1ec9, 0xd8} /* small letter i with hook above */,
+ {0x1eca, 0x91} /* capital letter i with dot below */,
+ {0x1ecb, 0xde} /* small letter i with dot below */,
+ {0x1ecc, 0x96} /* capital letter o with dot below */,
+ {0x1ecd, 0xe4} /* small letter o with dot below */,
+ {0x1ece, 0x93} /* capital letter o with hook above */,
+ {0x1ecf, 0xe1} /* small letter o with hook above */,
+ {0x1ed0, 0xff} /* capital letter o with circumflex and acute */,
+ {0x1ed1, 0xe8} /* small letter o with circumflex and acute */,
+ {0x1ed2, 0xdb} /* capital letter o with circumflex and grave */,
+ {0x1ed3, 0xe5} /* small letter o with circumflex and grave */,
+ {0x1ed4, 0xe0} /* capital letter o with circumflex and hook above */,
+ {0x1ed5, 0xe6} /* small letter o with circumflex and hook above */,
+ {0x1ed6, 0xf0} /* capital letter o with circumflex and tilde */,
+ {0x1ed7, 0xe7} /* small letter o with circumflex and tilde */,
+ {0x1ed8, 0x97} /* latine o accent circonflexe et point souscrit */,
+ {0x1ed9, 0xe9} /* latine o accent circonflexe et point souscrit */,
+ {0x1eda, 0x9b} /* capital letter o with horn and acute */,
+ {0x1edb, 0xed} /* small letter o with horn and acute */,
+ {0x1edc, 0x98} /* capital letter o with horn and grave */,
+ {0x1edd, 0xea} /* small letter o with horn and grave */,
+ {0x1ede, 0x99} /* capital letter o with horn and hook above */,
+ {0x1edf, 0xeb} /* small letter o with horn and hook above */,
+ {0x1ee0, 0x9a} /* capital letter o with horn and tilde */,
+ {0x1ee1, 0xec} /* small letter o with horn and tilde */,
+ {0x1ee2, 0x9c} /* latine o cornu point souscrit */,
+ {0x1ee3, 0xee} /* latine o cornu point souscrit */,
+ {0x1ee4, 0x02} /* capital letter u with dot below */,
+ {0x1ee5, 0xf4} /* small letter u with dot below */,
+ {0x1ee6, 0x9e} /* capital letter u with hook above */,
+ {0x1ee7, 0xf1} /* small letter u with hook above */,
+ {0x1ee8, 0x11} /* capital letter u with horn and acute */,
+ {0x1ee9, 0xf8} /* small letter u with horn and acute */,
+ {0x1eea, 0x04} /* capital letter u with horn and grave */,
+ {0x1eeb, 0xf5} /* small letter u with horn and grave */,
+ {0x1eec, 0x05} /* capital letter u with horn and hook above */,
+ {0x1eed, 0xf6} /* small letter u with horn and hook above */,
+ {0x1eee, 0x06} /* capital letter u with horn and tilde */,
+ {0x1eef, 0xf7} /* small letter u with horn and tilde */,
+ {0x1ef0, 0x12} /* latine u cornu point souscrit */,
+ {0x1ef1, 0xf9} /* latine u cornu point souscrit */,
+ {0x1ef2, 0x13} /* capital letter y with grave */,
+ {0x1ef3, 0xfa} /* small letter y with grave */,
+ {0x1ef4, 0x17} /* capital letter y with dot below */,
+ {0x1ef5, 0xfe} /* small letter y with dot below */,
+ {0x1ef6, 0x14} /* capital letter y with hook above */,
+ {0x1ef7, 0xfb} /* small letter y with hook above */,
+ {0x1ef8, 0x15} /* capital letter y with tilde */,
+ {0x1ef9, 0xfc} /* small letter y with tilde */
+};
+
+/*
+#define cet_ucs4_to_tcvn_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_tcvn_extra[cet_ucs4_to_tcvn_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_tcvn = /* defined in cet.h */
+{
+ cet_cs_name_tcvn, /* name of character set */
+ cet_cs_alias_tcvn, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_tcvn, /* char to UCS-4 value table */
+ cet_ucs4_ofs_tcvn, /* first non standard character */
+ cet_ucs4_cnt_tcvn, /* number of values in table */
+
+ cet_ucs4_to_tcvn_links, /* UCS-4 to char links */
+ cet_ucs4_to_tcvn_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int tcvn_ucs4_full_map[] =
+{
+ 0x0000, 0x00da, 0x1ee4, 0x0003, 0x1eea, 0x1eec, 0x1eee, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x1ee8, 0x1ef0, 0x1ef2, 0x1ef6, 0x1ef8, 0x00dd, 0x1ef4,
+ 0x0018, 0x0019, 0x001a, 0x001b, 0x001c, 0x001d, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c0, 0x1ea2, 0x00c3, 0x00c1, 0x1ea0, 0x1eb6, 0x1eac, 0x00c8,
+ 0x1eba, 0x1ebc, 0x00c9, 0x1eb8, 0x1ec6, 0x00cc, 0x1ec8, 0x0128,
+ 0x00cd, 0x1eca, 0x00d2, 0x1ece, 0x00d5, 0x00d3, 0x1ecc, 0x1ed8,
+ 0x1edc, 0x1ede, 0x1ee0, 0x1eda, 0x1ee2, 0x00d9, 0x1ee6, 0x0168,
+ -1, 0x0102, 0x00c2, 0x00ca, 0x00d4, 0x01a0, 0x01af, 0x0110,
+ 0x0103, 0x00e2, 0x00ea, 0x00f4, 0x01a1, 0x01b0, 0x0111, 0x1eb0,
+ -1, -1, -1, -1, -1, 0x00e0, 0x1ea3, 0x00e3,
+ 0x00e1, 0x1ea1, 0x1eb2, 0x1eb1, 0x1eb3, 0x1eb5, 0x1eaf, 0x1eb4,
+ 0x1eae, 0x1ea6, 0x1ea8, 0x1eaa, 0x1ea4, 0x1ec0, 0x1eb7, 0x1ea7,
+ 0x1ea9, 0x1eab, 0x1ea5, 0x1ead, 0x00e8, 0x1ec2, 0x1ebb, 0x1ebd,
+ 0x00e9, 0x1eb9, 0x1ec1, 0x1ec3, 0x1ec5, 0x1ebf, 0x1ec7, 0x00ec,
+ 0x1ec9, 0x1ec4, 0x1ebe, 0x1ed2, 0x0129, 0x00ed, 0x1ecb, 0x00f2,
+ 0x1ed4, 0x1ecf, 0x00f5, 0x00f3, 0x1ecd, 0x1ed3, 0x1ed5, 0x1ed7,
+ 0x1ed1, 0x1ed9, 0x1edd, 0x1edf, 0x1ee1, 0x1edb, 0x1ee3, 0x00f9,
+ 0x1ed6, 0x1ee7, 0x0169, 0x00fa, 0x1ee5, 0x1eeb, 0x1eed, 0x1eef,
+ 0x1ee9, 0x1ef1, 0x1ef3, 0x1ef7, 0x1ef9, 0x00fd, 0x1ef5, 0x1ed0
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "VISCII" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef viscii_h
+#define viscii_h
+
+#define cet_cs_name_viscii "VISCII"
+
+const char *cet_cs_alias_viscii[] =
+{
+ "VISCII", "csVISCII", "VISCII1.1-1", NULL
+};
+
+#define cet_ucs4_ofs_viscii 2
+#define cet_ucs4_cnt_viscii 254
+
+const int cet_ucs4_map_viscii[cet_ucs4_cnt_viscii] =
+{
+ 0x1eb2, 0x0003, 0x0004, 0x1eb4, 0x1eaa, 0x0007, 0x0008, 0x0009,
+ 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f, 0x0010, 0x0011,
+ 0x0012, 0x0013, 0x1ef6, 0x0015, 0x0016, 0x0017, 0x0018, 0x1ef8,
+ 0x001a, 0x001b, 0x001c, 0x001d, 0x1ef4, 0x001f, 0x0020, 0x0021,
+ 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029,
+ 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031,
+ 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039,
+ 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041,
+ 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049,
+ 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051,
+ 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059,
+ 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061,
+ 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069,
+ 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071,
+ 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079,
+ 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f, 0x1ea0, 0x1eae,
+ 0x1eb0, 0x1eb6, 0x1ea4, 0x1ea6, 0x1ea8, 0x1eac, 0x1ebc, 0x1eb8,
+ 0x1ebe, 0x1ec0, 0x1ec2, 0x1ec4, 0x1ec6, 0x1ed0, 0x1ed2, 0x1ed4,
+ 0x1ed6, 0x1ed8, 0x1ee2, 0x1eda, 0x1edc, 0x1ede, 0x1eca, 0x1ece,
+ 0x1ecc, 0x1ec8, 0x1ee6, 0x0168, 0x1ee4, 0x1ef2, 0x00d5, 0x1eaf,
+ 0x1eb1, 0x1eb7, 0x1ea5, 0x1ea7, 0x1ea9, 0x1ead, 0x1ebd, 0x1eb9,
+ 0x1ebf, 0x1ec1, 0x1ec3, 0x1ec5, 0x1ec7, 0x1ed1, 0x1ed3, 0x1ed5,
+ 0x1ed7, 0x1ee0, 0x01a0, 0x1ed9, 0x1edd, 0x1edf, 0x1ecb, 0x1ef0,
+ 0x1ee8, 0x1eea, 0x1eec, 0x01a1, 0x1edb, 0x01af, 0x00c0, 0x00c1,
+ 0x00c2, 0x00c3, 0x1ea2, 0x0102, 0x1eb3, 0x1eb5, 0x00c8, 0x00c9,
+ 0x00ca, 0x1eba, 0x00cc, 0x00cd, 0x0128, 0x1ef3, 0x0110, 0x1ee9,
+ 0x00d2, 0x00d3, 0x00d4, 0x1ea1, 0x1ef7, 0x1eeb, 0x1eed, 0x00d9,
+ 0x00da, 0x1ef9, 0x1ef5, 0x00dd, 0x1ee1, 0x01b0, 0x00e0, 0x00e1,
+ 0x00e2, 0x00e3, 0x1ea3, 0x0103, 0x1eef, 0x1eab, 0x00e8, 0x00e9,
+ 0x00ea, 0x1ebb, 0x00ec, 0x00ed, 0x0129, 0x1ec9, 0x0111, 0x1ef1,
+ 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x1ecf, 0x1ecd, 0x1ee5, 0x00f9,
+ 0x00fa, 0x0169, 0x1ee7, 0x00fd, 0x1ee3, 0x1eee
+};
+
+#define cet_ucs4_to_viscii_ct 103
+
+const cet_ucs4_link_t cet_ucs4_to_viscii_links[cet_ucs4_to_viscii_ct] =
+{
+ {0x00d5, 0xa0} /* capital letter o with tilde */,
+ {0x0102, 0xc5} /* capital letter a with breve */,
+ {0x0103, 0xe5} /* small letter a with breve */,
+ {0x0110, 0xd0} /* capital letter d with stroke */,
+ {0x0111, 0xf0} /* small letter d with stroke */,
+ {0x0128, 0xce} /* capital letter i with tilde */,
+ {0x0129, 0xee} /* small letter i with tilde */,
+ {0x0168, 0x9d} /* capital letter u with tilde */,
+ {0x0169, 0xfb} /* small letter u with tilde */,
+ {0x01a0, 0xb4} /* capital letter o with horn */,
+ {0x01a1, 0xbd} /* small letter o with horn */,
+ {0x01af, 0xbf} /* capital letter u with horn */,
+ {0x01b0, 0xdf} /* small letter u with horn */,
+ {0x1ea0, 0x80} /* capital letter a with dot below */,
+ {0x1ea1, 0xd5} /* small letter a with dot below */,
+ {0x1ea2, 0xc4} /* capital letter a with hook above */,
+ {0x1ea3, 0xe4} /* small letter a with hook above */,
+ {0x1ea4, 0x84} /* capital letter a with circumflex and acute */,
+ {0x1ea5, 0xa4} /* small letter a with circumflex and acute */,
+ {0x1ea6, 0x85} /* capital letter a with circumflex and grave */,
+ {0x1ea7, 0xa5} /* small letter a with circumflex and grave */,
+ {0x1ea8, 0x86} /* capital letter a with circumflex and hook above */,
+ {0x1ea9, 0xa6} /* small letter a with circumflex and hook above */,
+ {0x1eaa, 0x06} /* capital letter a with circumflex and tilde */,
+ {0x1eab, 0xe7} /* small letter a with circumflex and tilde */,
+ {0x1eac, 0x87} /* latine a accent circonflexe et point souscrit */,
+ {0x1ead, 0xa7} /* latine a accent circonflexe et point souscrit */,
+ {0x1eae, 0x81} /* capital letter a with breve and acute */,
+ {0x1eaf, 0xa1} /* small letter a with breve and acute */,
+ {0x1eb0, 0x82} /* capital letter a with breve and grave */,
+ {0x1eb1, 0xa2} /* small letter a with breve and grave */,
+ {0x1eb2, 0x02} /* capital letter a with breve and hook above */,
+ {0x1eb3, 0xc6} /* small letter a with breve and hook above */,
+ {0x1eb4, 0x05} /* capital letter a with breve and tilde */,
+ {0x1eb5, 0xc7} /* small letter a with breve and tilde */,
+ {0x1eb6, 0x83} /* latine a brève et point souscrit */,
+ {0x1eb7, 0xa3} /* latine a brève et point souscrit */,
+ {0x1eb8, 0x89} /* capital letter e with dot below */,
+ {0x1eb9, 0xa9} /* small letter e with dot below */,
+ {0x1eba, 0xcb} /* capital letter e with hook above */,
+ {0x1ebb, 0xeb} /* small letter e with hook above */,
+ {0x1ebc, 0x88} /* capital letter e with tilde */,
+ {0x1ebd, 0xa8} /* small letter e with tilde */,
+ {0x1ebe, 0x8a} /* capital letter e with circumflex and acute */,
+ {0x1ebf, 0xaa} /* small letter e with circumflex and acute */,
+ {0x1ec0, 0x8b} /* capital letter e with circumflex and grave */,
+ {0x1ec1, 0xab} /* small letter e with circumflex and grave */,
+ {0x1ec2, 0x8c} /* capital letter e with circumflex and hook above */,
+ {0x1ec3, 0xac} /* small letter e with circumflex and hook above */,
+ {0x1ec4, 0x8d} /* capital letter e with circumflex and tilde */,
+ {0x1ec5, 0xad} /* small letter e with circumflex and tilde */,
+ {0x1ec6, 0x8e} /* latine e accent circonflexe et point souscrit */,
+ {0x1ec7, 0xae} /* latine e accent circonflexe et point souscrit */,
+ {0x1ec8, 0x9b} /* capital letter i with hook above */,
+ {0x1ec9, 0xef} /* small letter i with hook above */,
+ {0x1eca, 0x98} /* capital letter i with dot below */,
+ {0x1ecb, 0xb8} /* small letter i with dot below */,
+ {0x1ecc, 0x9a} /* capital letter o with dot below */,
+ {0x1ecd, 0xf7} /* small letter o with dot below */,
+ {0x1ece, 0x99} /* capital letter o with hook above */,
+ {0x1ecf, 0xf6} /* small letter o with hook above */,
+ {0x1ed0, 0x8f} /* capital letter o with circumflex and acute */,
+ {0x1ed1, 0xaf} /* small letter o with circumflex and acute */,
+ {0x1ed2, 0x90} /* capital letter o with circumflex and grave */,
+ {0x1ed3, 0xb0} /* small letter o with circumflex and grave */,
+ {0x1ed4, 0x91} /* capital letter o with circumflex and hook above */,
+ {0x1ed5, 0xb1} /* small letter o with circumflex and hook above */,
+ {0x1ed6, 0x92} /* capital letter o with circumflex and tilde */,
+ {0x1ed7, 0xb2} /* small letter o with circumflex and tilde */,
+ {0x1ed8, 0x93} /* latine o accent circonflexe et point souscrit */,
+ {0x1ed9, 0xb5} /* latine o accent circonflexe et point souscrit */,
+ {0x1eda, 0x95} /* capital letter o with horn and acute */,
+ {0x1edb, 0xbe} /* small letter o with horn and acute */,
+ {0x1edc, 0x96} /* capital letter o with horn and grave */,
+ {0x1edd, 0xb6} /* small letter o with horn and grave */,
+ {0x1ede, 0x97} /* capital letter o with horn and hook above */,
+ {0x1edf, 0xb7} /* small letter o with horn and hook above */,
+ {0x1ee0, 0xb3} /* capital letter o with horn and tilde */,
+ {0x1ee1, 0xde} /* small letter o with horn and tilde */,
+ {0x1ee2, 0x94} /* latine o cornu point souscrit */,
+ {0x1ee3, 0xfe} /* latine o cornu point souscrit */,
+ {0x1ee4, 0x9e} /* capital letter u with dot below */,
+ {0x1ee5, 0xf8} /* small letter u with dot below */,
+ {0x1ee6, 0x9c} /* capital letter u with hook above */,
+ {0x1ee7, 0xfc} /* small letter u with hook above */,
+ {0x1ee8, 0xba} /* capital letter u with horn and acute */,
+ {0x1ee9, 0xd1} /* small letter u with horn and acute */,
+ {0x1eea, 0xbb} /* capital letter u with horn and grave */,
+ {0x1eeb, 0xd7} /* small letter u with horn and grave */,
+ {0x1eec, 0xbc} /* capital letter u with horn and hook above */,
+ {0x1eed, 0xd8} /* small letter u with horn and hook above */,
+ {0x1eee, 0xff} /* capital letter u with horn and tilde */,
+ {0x1eef, 0xe6} /* small letter u with horn and tilde */,
+ {0x1ef0, 0xb9} /* latine u cornu point souscrit */,
+ {0x1ef1, 0xf1} /* latine u cornu point souscrit */,
+ {0x1ef2, 0x9f} /* capital letter y with grave */,
+ {0x1ef3, 0xcf} /* small letter y with grave */,
+ {0x1ef4, 0x1e} /* capital letter y with dot below */,
+ {0x1ef5, 0xdc} /* small letter y with dot below */,
+ {0x1ef6, 0x14} /* capital letter y with hook above */,
+ {0x1ef7, 0xd6} /* small letter y with hook above */,
+ {0x1ef8, 0x19} /* capital letter y with tilde */,
+ {0x1ef9, 0xdb} /* small letter y with tilde */
+};
+
+/*
+#define cet_ucs4_to_viscii_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_viscii_extra[cet_ucs4_to_viscii_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_viscii = /* defined in cet.h */
+{
+ cet_cs_name_viscii, /* name of character set */
+ cet_cs_alias_viscii, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_viscii, /* char to UCS-4 value table */
+ cet_ucs4_ofs_viscii, /* first non standard character */
+ cet_ucs4_cnt_viscii, /* number of values in table */
+
+ cet_ucs4_to_viscii_links, /* UCS-4 to char links */
+ cet_ucs4_to_viscii_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int viscii_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x1eb2, 0x0003, 0x0004, 0x1eb4, 0x1eaa, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x0010, 0x0011, 0x0012, 0x0013, 0x1ef6, 0x0015, 0x0016, 0x0017,
+ 0x0018, 0x1ef8, 0x001a, 0x001b, 0x001c, 0x001d, 0x1ef4, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x1ea0, 0x1eae, 0x1eb0, 0x1eb6, 0x1ea4, 0x1ea6, 0x1ea8, 0x1eac,
+ 0x1ebc, 0x1eb8, 0x1ebe, 0x1ec0, 0x1ec2, 0x1ec4, 0x1ec6, 0x1ed0,
+ 0x1ed2, 0x1ed4, 0x1ed6, 0x1ed8, 0x1ee2, 0x1eda, 0x1edc, 0x1ede,
+ 0x1eca, 0x1ece, 0x1ecc, 0x1ec8, 0x1ee6, 0x0168, 0x1ee4, 0x1ef2,
+ 0x00d5, 0x1eaf, 0x1eb1, 0x1eb7, 0x1ea5, 0x1ea7, 0x1ea9, 0x1ead,
+ 0x1ebd, 0x1eb9, 0x1ebf, 0x1ec1, 0x1ec3, 0x1ec5, 0x1ec7, 0x1ed1,
+ 0x1ed3, 0x1ed5, 0x1ed7, 0x1ee0, 0x01a0, 0x1ed9, 0x1edd, 0x1edf,
+ 0x1ecb, 0x1ef0, 0x1ee8, 0x1eea, 0x1eec, 0x01a1, 0x1edb, 0x01af,
+ 0x00c0, 0x00c1, 0x00c2, 0x00c3, 0x1ea2, 0x0102, 0x1eb3, 0x1eb5,
+ 0x00c8, 0x00c9, 0x00ca, 0x1eba, 0x00cc, 0x00cd, 0x0128, 0x1ef3,
+ 0x0110, 0x1ee9, 0x00d2, 0x00d3, 0x00d4, 0x1ea1, 0x1ef7, 0x1eeb,
+ 0x1eed, 0x00d9, 0x00da, 0x1ef9, 0x1ef5, 0x00dd, 0x1ee1, 0x01b0,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x1ea3, 0x0103, 0x1eef, 0x1eab,
+ 0x00e8, 0x00e9, 0x00ea, 0x1ebb, 0x00ec, 0x00ed, 0x0129, 0x1ec9,
+ 0x0111, 0x1ef1, 0x00f2, 0x00f3, 0x00f4, 0x00f5, 0x1ecf, 0x1ecd,
+ 0x1ee5, 0x00f9, 0x00fa, 0x0169, 0x1ee7, 0x00fd, 0x1ee3, 0x1eee
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Data automatically generated from recode output:
+
+ 'recode -lf "VPS" 2>/dev/null'
+
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+
+*/
+
+#ifndef vps_h
+#define vps_h
+
+#define cet_cs_name_vps "VPS"
+
+const char *cet_cs_alias_vps[] =
+{
+ "VPS", NULL
+};
+
+#define cet_ucs4_ofs_vps 2
+#define cet_ucs4_cnt_vps 254
+
+const int cet_ucs4_map_vps[cet_ucs4_cnt_vps] =
+{
+ 0x1ea0, 0x1eac, 0x1eb6, 0x1eb8, 0x1ec6, 0x0007, 0x0008, 0x0009,
+ 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f, 0x1eca, 0x1ecc,
+ 0x1ed8, 0x1ee2, 0x1ee4, 0x1ef0, 0x0016, 0x0017, 0x0018, 0x1ef4,
+ 0x001a, 0x001b, 0x1eaa, 0x1eee, 0x001e, 0x001f, 0x0020, 0x0021,
+ 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029,
+ 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f, 0x0030, 0x0031,
+ 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037, 0x0038, 0x0039,
+ 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f, 0x0040, 0x0041,
+ 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047, 0x0048, 0x0049,
+ 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f, 0x0050, 0x0051,
+ 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, 0x0058, 0x0059,
+ 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f, 0x0060, 0x0061,
+ 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069,
+ 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f, 0x0070, 0x0071,
+ 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077, 0x0078, 0x0079,
+ 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f, 0x00c0, 0x1ea2,
+ 0x00c3, 0x1ea4, 0x1ea6, 0x1ea8, 0x1ecd, 0x1ed7, 0x0102, 0x1ebf,
+ 0x1ec1, 0x1ec3, 0x1ec7, 0x1eae, 0x1eb0, 0x1eb2, 0x1ebe, -1,
+ -1, 0x1ec0, 0x1ec2, 0x1ec4, 0x1ed0, 0x1ed2, 0x1ed4, -1,
+ 0x00fd, 0x1ef7, 0x1ef5, 0x1eda, 0x1edc, 0x1ede, -1, 0x1eaf,
+ 0x1eb1, 0x1eb3, 0x1eb5, 0x1eb7, 0x1ee0, 0x1edb, 0x00d9, 0x1edd,
+ 0x1edf, 0x1ee1, 0x0168, 0x1ee8, 0x1ee3, 0x1eea, 0x1ed5, 0x1eec,
+ 0x1ef2, 0x1ef8, 0x00cd, 0x00cc, 0x1ed9, 0x1ec8, 0x0128, 0x00d3,
+ 0x1eed, 0x1eef, 0x00d2, 0x1ece, 0x00d5, 0x1ef1, 0x1ea7, 0x00c1,
+ 0x00c2, 0x1ea5, 0x1ea9, 0x1eab, 0x1ead, 0x0111, 0x1ebb, 0x00c9,
+ 0x00ca, 0x1eb9, 0x1ec9, 0x1ec5, 0x1ecb, 0x1ef9, 0x01af, 0x1ee6,
+ 0x1ed3, 0x1ed1, 0x00d4, 0x1ecf, 0x01a1, 0x00c8, 0x1eeb, 0x1ee9,
+ 0x00da, 0x0169, 0x01b0, 0x00dd, 0x1eba, -1, 0x00e0, 0x00e1,
+ 0x00e2, 0x00e3, 0x1ea3, 0x1ea1, 0x0103, -1, 0x00e8, 0x00e9,
+ 0x00ea, 0x1ebd, 0x00ec, 0x00ed, -1, 0x0129, 0x1eb4, 0x0110,
+ 0x00f2, 0x00f3, 0x00f4, 0x00f5, -1, 0x01a0, 0x1ee5, 0x00f9,
+ 0x00fa, 0x1ee7, -1, 0x1ef6, 0x1ebc, 0x1ef3
+};
+
+#define cet_ucs4_to_vps_ct 111
+
+const cet_ucs4_link_t cet_ucs4_to_vps_links[cet_ucs4_to_vps_ct] =
+{
+ {0x00c0, 0x80} /* capital letter a with grave */,
+ {0x00c3, 0x82} /* capital letter a with tilde */,
+ {0x00c8, 0xd7} /* capital letter e with grave */,
+ {0x00cc, 0xb5} /* capital letter i with grave */,
+ {0x00cd, 0xb4} /* capital letter i with acute */,
+ {0x00d2, 0xbc} /* capital letter o with grave */,
+ {0x00d3, 0xb9} /* capital letter o with acute */,
+ {0x00d5, 0xbe} /* capital letter o with tilde */,
+ {0x00d9, 0xa8} /* capital letter u with grave */,
+ {0x00fd, 0x9a} /* small letter y with acute */,
+ {0x0102, 0x88} /* capital letter a with breve */,
+ {0x0103, 0xe6} /* small letter a with breve */,
+ {0x0110, 0xf1} /* capital letter d with stroke */,
+ {0x0111, 0xc7} /* small letter d with stroke */,
+ {0x0128, 0xb8} /* capital letter i with tilde */,
+ {0x0129, 0xef} /* small letter i with tilde */,
+ {0x0168, 0xac} /* capital letter u with tilde */,
+ {0x0169, 0xdb} /* small letter u with tilde */,
+ {0x01a0, 0xf7} /* capital letter o with horn */,
+ {0x01a1, 0xd6} /* small letter o with horn */,
+ {0x01af, 0xd0} /* capital letter u with horn */,
+ {0x01b0, 0xdc} /* small letter u with horn */,
+ {0x1ea0, 0x02} /* capital letter a with dot below */,
+ {0x1ea1, 0xe5} /* small letter a with dot below */,
+ {0x1ea2, 0x81} /* capital letter a with hook above */,
+ {0x1ea3, 0xe4} /* small letter a with hook above */,
+ {0x1ea4, 0x83} /* capital letter a with circumflex and acute */,
+ {0x1ea5, 0xc3} /* small letter a with circumflex and acute */,
+ {0x1ea6, 0x84} /* capital letter a with circumflex and grave */,
+ {0x1ea7, 0xc0} /* small letter a with circumflex and grave */,
+ {0x1ea8, 0x85} /* capital letter a with circumflex and hook above */,
+ {0x1ea9, 0xc4} /* small letter a with circumflex and hook above */,
+ {0x1eaa, 0x1c} /* capital letter a with circumflex and tilde */,
+ {0x1eab, 0xc5} /* small letter a with circumflex and tilde */,
+ {0x1eac, 0x03} /* latine a accent circonflexe et point souscrit */,
+ {0x1ead, 0xc6} /* latine a accent circonflexe et point souscrit */,
+ {0x1eae, 0x8d} /* capital letter a with breve and acute */,
+ {0x1eaf, 0xa1} /* small letter a with breve and acute */,
+ {0x1eb0, 0x8e} /* capital letter a with breve and grave */,
+ {0x1eb1, 0xa2} /* small letter a with breve and grave */,
+ {0x1eb2, 0x8f} /* capital letter a with breve and hook above */,
+ {0x1eb3, 0xa3} /* small letter a with breve and hook above */,
+ {0x1eb4, 0xf0} /* capital letter a with breve and tilde */,
+ {0x1eb5, 0xa4} /* small letter a with breve and tilde */,
+ {0x1eb6, 0x04} /* latine a brève et point souscrit */,
+ {0x1eb7, 0xa5} /* latine a brève et point souscrit */,
+ {0x1eb8, 0x05} /* capital letter e with dot below */,
+ {0x1eb9, 0xcb} /* small letter e with dot below */,
+ {0x1eba, 0xde} /* capital letter e with hook above */,
+ {0x1ebb, 0xc8} /* small letter e with hook above */,
+ {0x1ebc, 0xfe} /* capital letter e with tilde */,
+ {0x1ebd, 0xeb} /* small letter e with tilde */,
+ {0x1ebe, 0x90} /* capital letter e with circumflex and acute */,
+ {0x1ebf, 0x89} /* small letter e with circumflex and acute */,
+ {0x1ec0, 0x93} /* capital letter e with circumflex and grave */,
+ {0x1ec1, 0x8a} /* small letter e with circumflex and grave */,
+ {0x1ec2, 0x94} /* capital letter e with circumflex and hook above */,
+ {0x1ec3, 0x8b} /* small letter e with circumflex and hook above */,
+ {0x1ec4, 0x95} /* capital letter e with circumflex and tilde */,
+ {0x1ec5, 0xcd} /* small letter e with circumflex and tilde */,
+ {0x1ec6, 0x06} /* latine e accent circonflexe et point souscrit */,
+ {0x1ec7, 0x8c} /* latine e accent circonflexe et point souscrit */,
+ {0x1ec8, 0xb7} /* capital letter i with hook above */,
+ {0x1ec9, 0xcc} /* small letter i with hook above */,
+ {0x1eca, 0x10} /* capital letter i with dot below */,
+ {0x1ecb, 0xce} /* small letter i with dot below */,
+ {0x1ecc, 0x11} /* capital letter o with dot below */,
+ {0x1ecd, 0x86} /* small letter o with dot below */,
+ {0x1ece, 0xbd} /* capital letter o with hook above */,
+ {0x1ecf, 0xd5} /* small letter o with hook above */,
+ {0x1ed0, 0x96} /* capital letter o with circumflex and acute */,
+ {0x1ed1, 0xd3} /* small letter o with circumflex and acute */,
+ {0x1ed2, 0x97} /* capital letter o with circumflex and grave */,
+ {0x1ed3, 0xd2} /* small letter o with circumflex and grave */,
+ {0x1ed4, 0x98} /* capital letter o with circumflex and hook above */,
+ {0x1ed5, 0xb0} /* small letter o with circumflex and hook above */,
+ {0x1ed7, 0x87} /* small letter o with circumflex and tilde */,
+ {0x1ed8, 0x12} /* latine o accent circonflexe et point souscrit */,
+ {0x1ed9, 0xb6} /* latine o accent circonflexe et point souscrit */,
+ {0x1eda, 0x9d} /* capital letter o with horn and acute */,
+ {0x1edb, 0xa7} /* small letter o with horn and acute */,
+ {0x1edc, 0x9e} /* capital letter o with horn and grave */,
+ {0x1edd, 0xa9} /* small letter o with horn and grave */,
+ {0x1ede, 0x9f} /* capital letter o with horn and hook above */,
+ {0x1edf, 0xaa} /* small letter o with horn and hook above */,
+ {0x1ee0, 0xa6} /* capital letter o with horn and tilde */,
+ {0x1ee1, 0xab} /* small letter o with horn and tilde */,
+ {0x1ee2, 0x13} /* latine o cornu point souscrit */,
+ {0x1ee3, 0xae} /* latine o cornu point souscrit */,
+ {0x1ee4, 0x14} /* capital letter u with dot below */,
+ {0x1ee5, 0xf8} /* small letter u with dot below */,
+ {0x1ee6, 0xd1} /* capital letter u with hook above */,
+ {0x1ee7, 0xfb} /* small letter u with hook above */,
+ {0x1ee8, 0xad} /* capital letter u with horn and acute */,
+ {0x1ee9, 0xd9} /* small letter u with horn and acute */,
+ {0x1eea, 0xaf} /* capital letter u with horn and grave */,
+ {0x1eeb, 0xd8} /* small letter u with horn and grave */,
+ {0x1eec, 0xb1} /* capital letter u with horn and hook above */,
+ {0x1eed, 0xba} /* small letter u with horn and hook above */,
+ {0x1eee, 0x1d} /* capital letter u with horn and tilde */,
+ {0x1eef, 0xbb} /* small letter u with horn and tilde */,
+ {0x1ef0, 0x15} /* latine u cornu point souscrit */,
+ {0x1ef1, 0xbf} /* latine u cornu point souscrit */,
+ {0x1ef2, 0xb2} /* capital letter y with grave */,
+ {0x1ef3, 0xff} /* small letter y with grave */,
+ {0x1ef4, 0x19} /* capital letter y with dot below */,
+ {0x1ef5, 0x9c} /* small letter y with dot below */,
+ {0x1ef6, 0xfd} /* capital letter y with hook above */,
+ {0x1ef7, 0x9b} /* small letter y with hook above */,
+ {0x1ef8, 0xb3} /* capital letter y with tilde */,
+ {0x1ef9, 0xcf} /* small letter y with tilde */
+};
+
+/*
+#define cet_ucs4_to_vps_extra_ct 0
+const cet_ucs4_link_t cet_ucs4_to_vps_extra[cet_ucs4_to_vps_extra_ct] = {};
+*/
+
+cet_cs_vec_t cet_cs_vec_vps = /* defined in cet.h */
+{
+ cet_cs_name_vps, /* name of character set */
+ cet_cs_alias_vps, /* alias table */
+
+ NULL, /* ... to UCS-4 converter (multi-byte) */
+ NULL, /* UCS-4 to ... converter (multi-byte) */
+
+ cet_ucs4_map_vps, /* char to UCS-4 value table */
+ cet_ucs4_ofs_vps, /* first non standard character */
+ cet_ucs4_cnt_vps, /* number of values in table */
+
+ cet_ucs4_to_vps_links, /* UCS-4 to char links */
+ cet_ucs4_to_vps_ct, /* number of links */
+
+ NULL, /* hand made UCS-4 links */
+ 0, /* number of extra links */
+
+ NULL /* for internal use */
+};
+
+
+/*
+const int vps_ucs4_full_map[] =
+{
+ 0x0000, 0x0001, 0x1ea0, 0x1eac, 0x1eb6, 0x1eb8, 0x1ec6, 0x0007,
+ 0x0008, 0x0009, 0x000a, 0x000b, 0x000c, 0x000d, 0x000e, 0x000f,
+ 0x1eca, 0x1ecc, 0x1ed8, 0x1ee2, 0x1ee4, 0x1ef0, 0x0016, 0x0017,
+ 0x0018, 0x1ef4, 0x001a, 0x001b, 0x1eaa, 0x1eee, 0x001e, 0x001f,
+ 0x0020, 0x0021, 0x0022, 0x0023, 0x0024, 0x0025, 0x0026, 0x0027,
+ 0x0028, 0x0029, 0x002a, 0x002b, 0x002c, 0x002d, 0x002e, 0x002f,
+ 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, 0x0036, 0x0037,
+ 0x0038, 0x0039, 0x003a, 0x003b, 0x003c, 0x003d, 0x003e, 0x003f,
+ 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, 0x0046, 0x0047,
+ 0x0048, 0x0049, 0x004a, 0x004b, 0x004c, 0x004d, 0x004e, 0x004f,
+ 0x0050, 0x0051, 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057,
+ 0x0058, 0x0059, 0x005a, 0x005b, 0x005c, 0x005d, 0x005e, 0x005f,
+ 0x0060, 0x0061, 0x0062, 0x0063, 0x0064, 0x0065, 0x0066, 0x0067,
+ 0x0068, 0x0069, 0x006a, 0x006b, 0x006c, 0x006d, 0x006e, 0x006f,
+ 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, 0x0076, 0x0077,
+ 0x0078, 0x0079, 0x007a, 0x007b, 0x007c, 0x007d, 0x007e, 0x007f,
+ 0x00c0, 0x1ea2, 0x00c3, 0x1ea4, 0x1ea6, 0x1ea8, 0x1ecd, 0x1ed7,
+ 0x0102, 0x1ebf, 0x1ec1, 0x1ec3, 0x1ec7, 0x1eae, 0x1eb0, 0x1eb2,
+ 0x1ebe, -1, -1, 0x1ec0, 0x1ec2, 0x1ec4, 0x1ed0, 0x1ed2,
+ 0x1ed4, -1, 0x00fd, 0x1ef7, 0x1ef5, 0x1eda, 0x1edc, 0x1ede,
+ -1, 0x1eaf, 0x1eb1, 0x1eb3, 0x1eb5, 0x1eb7, 0x1ee0, 0x1edb,
+ 0x00d9, 0x1edd, 0x1edf, 0x1ee1, 0x0168, 0x1ee8, 0x1ee3, 0x1eea,
+ 0x1ed5, 0x1eec, 0x1ef2, 0x1ef8, 0x00cd, 0x00cc, 0x1ed9, 0x1ec8,
+ 0x0128, 0x00d3, 0x1eed, 0x1eef, 0x00d2, 0x1ece, 0x00d5, 0x1ef1,
+ 0x1ea7, 0x00c1, 0x00c2, 0x1ea5, 0x1ea9, 0x1eab, 0x1ead, 0x0111,
+ 0x1ebb, 0x00c9, 0x00ca, 0x1eb9, 0x1ec9, 0x1ec5, 0x1ecb, 0x1ef9,
+ 0x01af, 0x1ee6, 0x1ed3, 0x1ed1, 0x00d4, 0x1ecf, 0x01a1, 0x00c8,
+ 0x1eeb, 0x1ee9, 0x00da, 0x0169, 0x01b0, 0x00dd, 0x1eba, -1,
+ 0x00e0, 0x00e1, 0x00e2, 0x00e3, 0x1ea3, 0x1ea1, 0x0103, -1,
+ 0x00e8, 0x00e9, 0x00ea, 0x1ebd, 0x00ec, 0x00ed, -1, 0x0129,
+ 0x1eb4, 0x0110, 0x00f2, 0x00f3, 0x00f4, 0x00f5, -1, 0x01a0,
+ 0x1ee5, 0x00f9, 0x00fa, 0x1ee7, -1, 0x1ef6, 0x1ebc, 0x1ef3
+};
+*/
+
+#endif
--- /dev/null
+/*
+
+ Character encoding transformation - utilities
+
+ Copyright (C) 2005 Olaf Klein, o.b.klein@t-online.de
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+*/
+
+
+#include <ctype.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+#include "defs.h"
+#include "cet.h"
+#include "cet_util.h"
+
+#ifndef NO_EXPAT
+# include <expat.h>
+#endif
+
+#define MYNAME "cet_util"
+
+static cet_cs_vec_t *cet_cs_vec_root = NULL;
+
+typedef struct cet_cs_alias_s
+{
+ char *name;
+ cet_cs_vec_t *vec;
+} cet_cs_alias_t;
+
+static cet_cs_alias_t *cet_cs_alias;
+static int cet_cs_alias_ct = 0;
+static int cet_cs_vec_ct = 0;
+
+/* %%% short hand strings transmission for main character sets %%% */
+
+#include "cet/iso_8859_1.h"
+char *
+cet_str_utf8_to_iso8859_1(const char *src)
+{
+ return cet_str_utf8_to_any(src, &cet_cs_vec_iso_8859_1);
+}
+
+char *
+cet_str_iso8859_1_to_utf8(const char *src)
+{
+ return cet_str_any_to_utf8(src, &cet_cs_vec_iso_8859_1);
+}
+
+#include "cet/iso_8859_15.h"
+
+char *
+cet_str_utf8_to_iso8859_15(const char *src)
+{
+ return cet_str_utf8_to_any(src, &cet_cs_vec_iso_8859_15);
+}
+
+char *
+cet_str_iso8859_15_to_utf8(const char *src)
+{
+ return cet_str_any_to_utf8(src, &cet_cs_vec_iso_8859_15);
+}
+
+#include "cet/ansi_x3_4_1968.h"
+
+char *
+cet_str_utf8_to_us_ascii(const char *src)
+{
+ return cet_str_utf8_to_any(src, &cet_cs_vec_ansi_x3_4_1968);
+}
+
+char *
+cet_str_us_ascii_to_utf8(const char *src)
+{
+ return cet_str_any_to_utf8(src, &cet_cs_vec_ansi_x3_4_1968);
+}
+
+#include "cet/cp1252.h"
+
+char *
+cet_str_utf8_to_cp1252(const char *src)
+{
+ return cet_str_utf8_to_any(src, &cet_cs_vec_cp1252);
+}
+
+char *
+cet_str_cp1252_to_utf8(const char *src)
+{
+ return cet_str_any_to_utf8(src, &cet_cs_vec_cp1252);
+}
+
+
+/* helpers */
+
+/* %%% %%%
+ *
+ *
+ */
+
+int XMLCALL cet_lib_expat_UnknownEncodingHandler(void *data, const XML_Char *encoding, XML_Encoding *info)
+{
+ cet_cs_vec_t *cs;
+ int i, c, ucs4_def;
+
+ cs = cet_find_cs_by_name(encoding);
+ if (cs == NULL) return XML_STATUS_ERROR; /* fatal(MYNAME ": Unknown character set \"%s\"!\n", encoding); */
+
+ cet_char_to_ucs4(CET_NOT_CONVERTABLE_DEFAULT, cs, &ucs4_def);
+
+ for (i = 0; i < cs->ucs4_offset; i++) info->map[i] = i; /* equal to ascii part */
+ for (i = 0; i < cs->ucs4_count; i++) /* mixed table */
+ {
+ c = cs->ucs4_map[i];
+ if (c == -1) c = ucs4_def;
+ info->map[i + cs->ucs4_offset] = c;
+ }
+ for (i = cs->ucs4_offset + cs->ucs4_count; i < 256; i++) info->map[i] = ucs4_def; /* non convertable trailer */
+
+ info->data = NULL;
+ info->convert = NULL;
+ info->release = NULL;
+
+ cet_convert_init(CET_CHARSET_UTF8, 1); /* We do not need to transform any string */
+
+ if (global_opts.verbose_status > 0)
+ printf(MYNAME ": XML parser - encoding handler for character set \"%s\" established.\n", encoding);
+
+ return XML_STATUS_OK;
+}
+
+
+char *
+cet_str_uni_to_any(const short *src, int length, const cet_cs_vec_t *dest_vec)
+{
+ char *res, *c;
+ const cet_cs_vec_t *cs = (dest_vec != NULL) ? dest_vec : &cet_cs_vec_ansi_x3_4_1968;
+
+ res = cet_str_uni_to_utf8(src, length);
+ if (cs != &cet_cs_vec_utf8)
+ {
+ c = cet_str_utf8_to_any(res, cs);
+ xfree(res);
+ res = c;
+ }
+ return res;
+}
+
+/* %%% cet_str_any_to_any %%%
+ *
+ * -->> for use in mkshort */
+
+char *
+cet_str_any_to_any(const char *src, const cet_cs_vec_t *src_vec, const cet_cs_vec_t *dest_vec)
+{
+ char *c0, *c1;
+ const cet_cs_vec_t *v_in = (src_vec != NULL ) ? src_vec : &cet_cs_vec_ansi_x3_4_1968;
+ const cet_cs_vec_t *v_out = (dest_vec != NULL ) ? dest_vec : &cet_cs_vec_ansi_x3_4_1968;
+
+ if (src == NULL)
+ return NULL;
+ else
+ if ((*src == '\0') || (v_in == v_out)) return xstrdup(src);
+
+ c0 = (v_in == &cet_cs_vec_utf8) ? xstrdup(src) : cet_str_any_to_utf8(src, v_in);
+ c1 = (v_out == &cet_cs_vec_utf8) ? xstrdup(c0) : cet_str_utf8_to_any(c0, v_out);
+ xfree(c0);
+
+ return c1;
+}
+
+/* %%% cet_valid_char %%%
+ *
+ * returnes 1 if convertable otherwise 0
+ *
+ */
+
+int
+cet_valid_char(const char *src, const cet_cs_vec_t *vec)
+{
+ int value;
+
+ const cet_cs_vec_t *v = (vec != NULL) ? vec : &cet_cs_vec_ansi_x3_4_1968;
+ return cet_char_to_ucs4(*src, v, &value);
+}
+
+/* %%% include character set headers %%% */
+
+#include "cet/ansi_x3_4_1968.h"
+#include "cet/atarist.h"
+#include "cet/baltic.h"
+#include "cet/bs_4730.h"
+#include "cet/bs_viewdata.h"
+#include "cet/cp1250.h"
+#include "cet/cp1251.h"
+#include "cet/cp1252.h"
+#include "cet/cp1253.h"
+#include "cet/cp1254.h"
+#include "cet/cp1255.h"
+#include "cet/cp1256.h"
+#include "cet/cp1257.h"
+#include "cet/csa_z243_4_1985_1.h"
+#include "cet/csa_z243_4_1985_2.h"
+#include "cet/csa_z243_4_1985_gr.h"
+#include "cet/csn_369103.h"
+#include "cet/cwi.h"
+#include "cet/dec_mcs.h"
+#include "cet/din_66003.h"
+#include "cet/ds_2089.h"
+#include "cet/ecma_cyrillic.h"
+#include "cet/es.h"
+#include "cet/es2.h"
+#include "cet/gb_1988_80.h"
+#include "cet/gost_19768_87.h"
+#include "cet/hp_roman8.h"
+#include "cet/ibm037.h"
+#include "cet/ibm1004.h"
+#include "cet/ibm1026.h"
+#include "cet/ibm1047.h"
+#include "cet/ibm256.h"
+#include "cet/ibm273.h"
+#include "cet/ibm277.h"
+#include "cet/ibm278.h"
+#include "cet/ibm280.h"
+#include "cet/ibm284.h"
+#include "cet/ibm285.h"
+#include "cet/ibm297.h"
+#include "cet/ibm437.h"
+#include "cet/ibm500.h"
+#include "cet/ibm850.h"
+#include "cet/ibm851.h"
+#include "cet/ibm852.h"
+#include "cet/ibm855.h"
+#include "cet/ibm857.h"
+#include "cet/ibm860.h"
+#include "cet/ibm861.h"
+#include "cet/ibm862.h"
+#include "cet/ibm863.h"
+#include "cet/ibm864.h"
+#include "cet/ibm865.h"
+#include "cet/ibm868.h"
+#include "cet/ibm869.h"
+#include "cet/ibm871.h"
+#include "cet/ibm891.h"
+#include "cet/ibm903.h"
+#include "cet/ibm904.h"
+#include "cet/iec_p27_1.h"
+#include "cet/iso_10367_box.h"
+#include "cet/iso_5427.h"
+#include "cet/iso_646_irv.h"
+#include "cet/iso_6937_2_25.h"
+#include "cet/iso_8859_1.h"
+#include "cet/iso_8859_10.h"
+#include "cet/iso_8859_13.h"
+#include "cet/iso_8859_14.h"
+#include "cet/iso_8859_15.h"
+#include "cet/iso_8859_2.h"
+#include "cet/iso_8859_3.h"
+#include "cet/iso_8859_4.h"
+#include "cet/iso_8859_5.h"
+#include "cet/iso_8859_6.h"
+#include "cet/iso_8859_7.h"
+#include "cet/iso_8859_8.h"
+#include "cet/iso_8859_9.h"
+#include "cet/iso_8859_supp.h"
+#include "cet/it.h"
+#include "cet/jis_c6220_1969_ro.h"
+#include "cet/jis_x0201.h"
+#include "cet/jus_i_b1_002.h"
+#include "cet/jus_i_b1_003_mac.h"
+#include "cet/jus_i_b1_003_serb.h"
+#include "cet/keybcs2.h"
+#include "cet/koi8_r.h"
+#include "cet/koi8_ru.h"
+#include "cet/koi8_u.h"
+#include "cet/koi_7.h"
+#include "cet/koi_8.h"
+#include "cet/koi_8_cs2.h"
+#include "cet/ksc5636.h"
+#include "cet/latin_greek_1.h"
+#include "cet/mac_is.h"
+#include "cet/macintosh.h"
+#include "cet/macintosh_ce.h"
+#include "cet/msz_7795_3.h"
+#include "cet/nats_dano.h"
+#include "cet/nats_sefi.h"
+#include "cet/nc_nc00_10.h"
+#include "cet/nextstep.h"
+#include "cet/nf_z_62_010.h"
+#include "cet/nf_z_62_010__1973_.h"
+#include "cet/ns_4551_1.h"
+#include "cet/ns_4551_2.h"
+#include "cet/pt.h"
+#include "cet/pt2.h"
+#include "cet/sami.h"
+#include "cet/sen_850200_b.h"
+#include "cet/sen_850200_c.h"
+#include "cet/tcvn.h"
+#include "cet/viscii.h"
+#include "cet/vps.h"
+
+#ifdef DEBUG_MEM
+
+void
+cet_check_cs(cet_cs_vec_t *vec) /* test well sorted link & extra tables */
+{
+ cet_ucs4_link_t *link;
+
+ if ((link = (cet_ucs4_link_t *)vec->ucs4_link))
+ {
+ int i, j;
+
+ for (i = 0, j = 1; j < vec->ucs4_links; i++, j++)
+ {
+ if (link[i].value >= link[j].value)
+ {
+ printf(MYNAME ": checked 0x%04x with 0x%04x\n", link[i].value, link[j].value);
+ fatal(MYNAME ": \"%s\"-link-table unsorted !!!\n", vec->name);
+ }
+
+ }
+ }
+ if ((link = (cet_ucs4_link_t *)vec->ucs4_extra))
+ {
+ int i, j;
+
+ for (i = 0, j = 1; j < vec->ucs4_extras; i++, j++)
+ {
+ if (link[i].value >= link[j].value)
+ {
+ printf(MYNAME ": check 0x%04x with 0x%04x\n", link[i].value, link[j].value);
+ fatal(MYNAME ": \"%s\"-extra-table unsorted !!!\n", vec->name);
+ }
+
+ }
+ }
+}
+
+#endif
+
+static signed int
+cet_cs_alias_qsort_cb(const void *a, const void *b)
+{
+ const cet_cs_alias_t *va = a;
+ const cet_cs_alias_t *vb = b;
+ return case_ignore_strcmp(va->name, vb->name);
+}
+
+static signed int
+cet_cs_vec_qsort_cb(const void *a, const void *b)
+{
+ const cet_cs_vec_t *va = *(cet_cs_vec_t **)a;
+ const cet_cs_vec_t *vb = *(cet_cs_vec_t **)b;
+ return case_ignore_strcmp(va->name, vb->name);
+}
+
+void
+cet_register_cs(cet_cs_vec_t *vec)
+{
+ if (vec->next == NULL)
+ {
+ vec->next = cet_cs_vec_root;
+ cet_cs_vec_root = vec;
+ cet_cs_vec_ct++;
+#ifdef DEBUG_MEM
+ cet_check_cs(vec);
+#endif
+ }
+}
+
+/* Dummy vector for our native character set */
+
+const char *cet_cs_utf8_alias[] =
+{
+ "utf8", NULL
+};
+
+cet_cs_vec_t cet_cs_vec_utf8 =
+{
+ CET_CHARSET_UTF8,
+ cet_cs_utf8_alias,
+ NULL, /* dec */
+ NULL, /* enc */
+ NULL, /* link */
+ 0,
+ 0,
+ NULL, /* extra */
+ 0, /* extras */
+ NULL
+};
+
+void
+cet_register(void)
+{
+ int i, c;
+
+ if (cet_cs_vec_root != NULL) return;
+
+ cet_cs_vec_ct = 0;
+ cet_register_cs(&cet_cs_vec_utf8); /* internal place holder */
+
+#ifdef cet_cs_name_ansi_x3_4_1968
+cet_register_cs(&cet_cs_vec_ansi_x3_4_1968);
+#endif
+#ifdef cet_cs_name_atarist
+cet_register_cs(&cet_cs_vec_atarist);
+#endif
+#ifdef cet_cs_name_baltic
+cet_register_cs(&cet_cs_vec_baltic);
+#endif
+#ifdef cet_cs_name_bs_4730
+cet_register_cs(&cet_cs_vec_bs_4730);
+#endif
+#ifdef cet_cs_name_bs_viewdata
+cet_register_cs(&cet_cs_vec_bs_viewdata);
+#endif
+#ifdef cet_cs_name_cp1250
+cet_register_cs(&cet_cs_vec_cp1250);
+#endif
+#ifdef cet_cs_name_cp1251
+cet_register_cs(&cet_cs_vec_cp1251);
+#endif
+#ifdef cet_cs_name_cp1252
+cet_register_cs(&cet_cs_vec_cp1252);
+#endif
+#ifdef cet_cs_name_cp1253
+cet_register_cs(&cet_cs_vec_cp1253);
+#endif
+#ifdef cet_cs_name_cp1254
+cet_register_cs(&cet_cs_vec_cp1254);
+#endif
+#ifdef cet_cs_name_cp1255
+cet_register_cs(&cet_cs_vec_cp1255);
+#endif
+#ifdef cet_cs_name_cp1256
+cet_register_cs(&cet_cs_vec_cp1256);
+#endif
+#ifdef cet_cs_name_cp1257
+cet_register_cs(&cet_cs_vec_cp1257);
+#endif
+#ifdef cet_cs_name_csa_z243_4_1985_1
+cet_register_cs(&cet_cs_vec_csa_z243_4_1985_1);
+#endif
+#ifdef cet_cs_name_csa_z243_4_1985_2
+cet_register_cs(&cet_cs_vec_csa_z243_4_1985_2);
+#endif
+#ifdef cet_cs_name_csa_z243_4_1985_gr
+cet_register_cs(&cet_cs_vec_csa_z243_4_1985_gr);
+#endif
+#ifdef cet_cs_name_csn_369103
+cet_register_cs(&cet_cs_vec_csn_369103);
+#endif
+#ifdef cet_cs_name_cwi
+cet_register_cs(&cet_cs_vec_cwi);
+#endif
+#ifdef cet_cs_name_dec_mcs
+cet_register_cs(&cet_cs_vec_dec_mcs);
+#endif
+#ifdef cet_cs_name_din_66003
+cet_register_cs(&cet_cs_vec_din_66003);
+#endif
+#ifdef cet_cs_name_ds_2089
+cet_register_cs(&cet_cs_vec_ds_2089);
+#endif
+#ifdef cet_cs_name_ecma_cyrillic
+cet_register_cs(&cet_cs_vec_ecma_cyrillic);
+#endif
+#ifdef cet_cs_name_es
+cet_register_cs(&cet_cs_vec_es);
+#endif
+#ifdef cet_cs_name_es2
+cet_register_cs(&cet_cs_vec_es2);
+#endif
+#ifdef cet_cs_name_gb_1988_80
+cet_register_cs(&cet_cs_vec_gb_1988_80);
+#endif
+#ifdef cet_cs_name_gost_19768_87
+cet_register_cs(&cet_cs_vec_gost_19768_87);
+#endif
+#ifdef cet_cs_name_hp_roman8
+cet_register_cs(&cet_cs_vec_hp_roman8);
+#endif
+#ifdef cet_cs_name_ibm037
+cet_register_cs(&cet_cs_vec_ibm037);
+#endif
+#ifdef cet_cs_name_ibm1004
+cet_register_cs(&cet_cs_vec_ibm1004);
+#endif
+#ifdef cet_cs_name_ibm1026
+cet_register_cs(&cet_cs_vec_ibm1026);
+#endif
+#ifdef cet_cs_name_ibm1047
+cet_register_cs(&cet_cs_vec_ibm1047);
+#endif
+#ifdef cet_cs_name_ibm256
+cet_register_cs(&cet_cs_vec_ibm256);
+#endif
+#ifdef cet_cs_name_ibm273
+cet_register_cs(&cet_cs_vec_ibm273);
+#endif
+#ifdef cet_cs_name_ibm277
+cet_register_cs(&cet_cs_vec_ibm277);
+#endif
+#ifdef cet_cs_name_ibm278
+cet_register_cs(&cet_cs_vec_ibm278);
+#endif
+#ifdef cet_cs_name_ibm280
+cet_register_cs(&cet_cs_vec_ibm280);
+#endif
+#ifdef cet_cs_name_ibm284
+cet_register_cs(&cet_cs_vec_ibm284);
+#endif
+#ifdef cet_cs_name_ibm285
+cet_register_cs(&cet_cs_vec_ibm285);
+#endif
+#ifdef cet_cs_name_ibm297
+cet_register_cs(&cet_cs_vec_ibm297);
+#endif
+#ifdef cet_cs_name_ibm437
+cet_register_cs(&cet_cs_vec_ibm437);
+#endif
+#ifdef cet_cs_name_ibm500
+cet_register_cs(&cet_cs_vec_ibm500);
+#endif
+#ifdef cet_cs_name_ibm850
+cet_register_cs(&cet_cs_vec_ibm850);
+#endif
+#ifdef cet_cs_name_ibm851
+cet_register_cs(&cet_cs_vec_ibm851);
+#endif
+#ifdef cet_cs_name_ibm852
+cet_register_cs(&cet_cs_vec_ibm852);
+#endif
+#ifdef cet_cs_name_ibm855
+cet_register_cs(&cet_cs_vec_ibm855);
+#endif
+#ifdef cet_cs_name_ibm857
+cet_register_cs(&cet_cs_vec_ibm857);
+#endif
+#ifdef cet_cs_name_ibm860
+cet_register_cs(&cet_cs_vec_ibm860);
+#endif
+#ifdef cet_cs_name_ibm861
+cet_register_cs(&cet_cs_vec_ibm861);
+#endif
+#ifdef cet_cs_name_ibm862
+cet_register_cs(&cet_cs_vec_ibm862);
+#endif
+#ifdef cet_cs_name_ibm863
+cet_register_cs(&cet_cs_vec_ibm863);
+#endif
+#ifdef cet_cs_name_ibm864
+cet_register_cs(&cet_cs_vec_ibm864);
+#endif
+#ifdef cet_cs_name_ibm865
+cet_register_cs(&cet_cs_vec_ibm865);
+#endif
+#ifdef cet_cs_name_ibm868
+cet_register_cs(&cet_cs_vec_ibm868);
+#endif
+#ifdef cet_cs_name_ibm869
+cet_register_cs(&cet_cs_vec_ibm869);
+#endif
+#ifdef cet_cs_name_ibm871
+cet_register_cs(&cet_cs_vec_ibm871);
+#endif
+#ifdef cet_cs_name_ibm891
+cet_register_cs(&cet_cs_vec_ibm891);
+#endif
+#ifdef cet_cs_name_ibm903
+cet_register_cs(&cet_cs_vec_ibm903);
+#endif
+#ifdef cet_cs_name_ibm904
+cet_register_cs(&cet_cs_vec_ibm904);
+#endif
+#ifdef cet_cs_name_iec_p27_1
+cet_register_cs(&cet_cs_vec_iec_p27_1);
+#endif
+#ifdef cet_cs_name_iso_10367_box
+cet_register_cs(&cet_cs_vec_iso_10367_box);
+#endif
+#ifdef cet_cs_name_iso_5427
+cet_register_cs(&cet_cs_vec_iso_5427);
+#endif
+#ifdef cet_cs_name_iso_646_irv
+cet_register_cs(&cet_cs_vec_iso_646_irv);
+#endif
+#ifdef cet_cs_name_iso_6937_2_25
+cet_register_cs(&cet_cs_vec_iso_6937_2_25);
+#endif
+#ifdef cet_cs_name_iso_8859_1
+cet_register_cs(&cet_cs_vec_iso_8859_1);
+#endif
+#ifdef cet_cs_name_iso_8859_10
+cet_register_cs(&cet_cs_vec_iso_8859_10);
+#endif
+#ifdef cet_cs_name_iso_8859_13
+cet_register_cs(&cet_cs_vec_iso_8859_13);
+#endif
+#ifdef cet_cs_name_iso_8859_14
+cet_register_cs(&cet_cs_vec_iso_8859_14);
+#endif
+#ifdef cet_cs_name_iso_8859_15
+cet_register_cs(&cet_cs_vec_iso_8859_15);
+#endif
+#ifdef cet_cs_name_iso_8859_2
+cet_register_cs(&cet_cs_vec_iso_8859_2);
+#endif
+#ifdef cet_cs_name_iso_8859_3
+cet_register_cs(&cet_cs_vec_iso_8859_3);
+#endif
+#ifdef cet_cs_name_iso_8859_4
+cet_register_cs(&cet_cs_vec_iso_8859_4);
+#endif
+#ifdef cet_cs_name_iso_8859_5
+cet_register_cs(&cet_cs_vec_iso_8859_5);
+#endif
+#ifdef cet_cs_name_iso_8859_6
+cet_register_cs(&cet_cs_vec_iso_8859_6);
+#endif
+#ifdef cet_cs_name_iso_8859_7
+cet_register_cs(&cet_cs_vec_iso_8859_7);
+#endif
+#ifdef cet_cs_name_iso_8859_8
+cet_register_cs(&cet_cs_vec_iso_8859_8);
+#endif
+#ifdef cet_cs_name_iso_8859_9
+cet_register_cs(&cet_cs_vec_iso_8859_9);
+#endif
+#ifdef cet_cs_name_iso_8859_supp
+cet_register_cs(&cet_cs_vec_iso_8859_supp);
+#endif
+#ifdef cet_cs_name_it
+cet_register_cs(&cet_cs_vec_it);
+#endif
+#ifdef cet_cs_name_jis_c6220_1969_ro
+cet_register_cs(&cet_cs_vec_jis_c6220_1969_ro);
+#endif
+#ifdef cet_cs_name_jis_x0201
+cet_register_cs(&cet_cs_vec_jis_x0201);
+#endif
+#ifdef cet_cs_name_jus_i_b1_002
+cet_register_cs(&cet_cs_vec_jus_i_b1_002);
+#endif
+#ifdef cet_cs_name_jus_i_b1_003_mac
+cet_register_cs(&cet_cs_vec_jus_i_b1_003_mac);
+#endif
+#ifdef cet_cs_name_jus_i_b1_003_serb
+cet_register_cs(&cet_cs_vec_jus_i_b1_003_serb);
+#endif
+#ifdef cet_cs_name_keybcs2
+cet_register_cs(&cet_cs_vec_keybcs2);
+#endif
+#ifdef cet_cs_name_koi8_r
+cet_register_cs(&cet_cs_vec_koi8_r);
+#endif
+#ifdef cet_cs_name_koi8_ru
+cet_register_cs(&cet_cs_vec_koi8_ru);
+#endif
+#ifdef cet_cs_name_koi8_u
+cet_register_cs(&cet_cs_vec_koi8_u);
+#endif
+#ifdef cet_cs_name_koi_7
+cet_register_cs(&cet_cs_vec_koi_7);
+#endif
+#ifdef cet_cs_name_koi_8
+cet_register_cs(&cet_cs_vec_koi_8);
+#endif
+#ifdef cet_cs_name_koi_8_cs2
+cet_register_cs(&cet_cs_vec_koi_8_cs2);
+#endif
+#ifdef cet_cs_name_ksc5636
+cet_register_cs(&cet_cs_vec_ksc5636);
+#endif
+#ifdef cet_cs_name_latin_greek_1
+cet_register_cs(&cet_cs_vec_latin_greek_1);
+#endif
+#ifdef cet_cs_name_mac_is
+cet_register_cs(&cet_cs_vec_mac_is);
+#endif
+#ifdef cet_cs_name_macintosh
+cet_register_cs(&cet_cs_vec_macintosh);
+#endif
+#ifdef cet_cs_name_macintosh_ce
+cet_register_cs(&cet_cs_vec_macintosh_ce);
+#endif
+#ifdef cet_cs_name_msz_7795_3
+cet_register_cs(&cet_cs_vec_msz_7795_3);
+#endif
+#ifdef cet_cs_name_nats_dano
+cet_register_cs(&cet_cs_vec_nats_dano);
+#endif
+#ifdef cet_cs_name_nats_sefi
+cet_register_cs(&cet_cs_vec_nats_sefi);
+#endif
+#ifdef cet_cs_name_nc_nc00_10
+cet_register_cs(&cet_cs_vec_nc_nc00_10);
+#endif
+#ifdef cet_cs_name_nextstep
+cet_register_cs(&cet_cs_vec_nextstep);
+#endif
+#ifdef cet_cs_name_nf_z_62_010
+cet_register_cs(&cet_cs_vec_nf_z_62_010);
+#endif
+#ifdef cet_cs_name_nf_z_62_010__1973_
+cet_register_cs(&cet_cs_vec_nf_z_62_010__1973_);
+#endif
+#ifdef cet_cs_name_ns_4551_1
+cet_register_cs(&cet_cs_vec_ns_4551_1);
+#endif
+#ifdef cet_cs_name_ns_4551_2
+cet_register_cs(&cet_cs_vec_ns_4551_2);
+#endif
+#ifdef cet_cs_name_pt
+cet_register_cs(&cet_cs_vec_pt);
+#endif
+#ifdef cet_cs_name_pt2
+cet_register_cs(&cet_cs_vec_pt2);
+#endif
+#ifdef cet_cs_name_sami
+cet_register_cs(&cet_cs_vec_sami);
+#endif
+#ifdef cet_cs_name_sen_850200_b
+cet_register_cs(&cet_cs_vec_sen_850200_b);
+#endif
+#ifdef cet_cs_name_sen_850200_c
+cet_register_cs(&cet_cs_vec_sen_850200_c);
+#endif
+#ifdef cet_cs_name_tcvn
+cet_register_cs(&cet_cs_vec_tcvn);
+#endif
+#ifdef cet_cs_name_viscii
+cet_register_cs(&cet_cs_vec_viscii);
+#endif
+#ifdef cet_cs_name_vps
+cet_register_cs(&cet_cs_vec_vps);
+#endif
+
+ if ( cet_cs_vec_ct > 0)
+ {
+ cet_cs_vec_t *p;
+ cet_cs_alias_t *list;
+ c = 0;
+
+ /* enumerate count of all names and aliases */
+
+ for (p = cet_cs_vec_root; p != NULL; p = p->next)
+ {
+ c++;
+ if (p->alias != NULL)
+ {
+ char **a = (char **)p->alias;
+ while ((*a) != NULL)
+ {
+ a++;
+ c++;
+ }
+ }
+ }
+ /* create name to vec table */
+
+ list = xcalloc(c, sizeof(*list));
+ i = 0;
+ for (p = cet_cs_vec_root; p != NULL; p = p->next)
+ {
+ if (p->alias != NULL)
+ {
+ char **a = (char **)p->alias;
+
+ list[i].name = xstrdup(p->name);
+ list[i].vec = p;
+ i++;
+ while (*a != NULL)
+ {
+ list[i].name = xstrdup(*a);
+ list[i].vec = p;
+ i++;
+ a++;
+ }
+ }
+ }
+ qsort(list, c, sizeof(*list), cet_cs_alias_qsort_cb);
+ cet_cs_alias = list;
+ cet_cs_alias_ct = c;
+#ifdef CET_DEBUG
+ printf("We have registered %d character sets with %d aliases\n", cet_cs_vec_ct, cet_cs_alias_ct);
+#endif
+ }
+}
+
+cet_cs_vec_t *
+cet_find_cs_by_name(const char *name)
+{
+ int i, j;
+
+ cet_register();
+
+ if (cet_cs_alias == NULL) return NULL;
+
+ i = 0;
+ j = cet_cs_alias_ct - 1;
+
+ while (i <= j)
+ {
+ int a, x;
+ cet_cs_alias_t *n;
+
+ a = (i + j) >> 1;
+ n = &cet_cs_alias[a];
+ x = case_ignore_strcmp(name, n->name);
+ if (x == 0) return n->vec;
+ else if (x < 0) j = a - 1;
+ else i = a + 1;
+ }
+ return NULL;
+}
+
+void
+cet_deregister(void)
+{
+ int i;
+ int j = cet_cs_alias_ct;
+ cet_cs_alias_t *p = cet_cs_alias;
+
+ if (p == NULL) return;
+
+ cet_cs_alias_ct = 0;
+ cet_cs_alias = NULL;
+
+ for (i = 0; i < j; i++)
+ xfree(p[i].name);
+ xfree(p);
+}
+
+/* gpsbabel additions */
+
+int
+cet_validate_cs(const char *cs, cet_cs_vec_t **vec, char **cs_name)
+{
+ char buff[128];
+ char *c;
+ cet_cs_vec_t *v;
+
+ if ((cs == NULL) || (strlen(cs) == 0)) /* set default us-ascii */
+ {
+ *vec = &cet_cs_vec_ansi_x3_4_1968;
+ *cs_name = xstrdup(CET_CHARSET_ASCII);
+ return 1;
+ }
+
+ v = cet_find_cs_by_name(cs);
+ if (v != NULL)
+ {
+ strncpy(buff, v->name, sizeof(buff));
+ c = buff;
+ while (*c != '\0')
+ {
+ *c = toupper(*c);
+ c++;
+ }
+ *cs_name = xstrdup(buff);
+ *vec = v;
+ return 1;
+ }
+ else
+ {
+ *cs_name = NULL;
+ *vec = NULL;
+ return 0;
+ }
+}
+
+void
+cet_convert_deinit(void)
+{
+ if (global_opts.charset_name != NULL) xfree(global_opts.charset_name);
+ global_opts.charset = NULL;
+ global_opts.charset_name = NULL;
+}
+
+void
+cet_convert_init(const char *cs_name, const int force)
+{
+ if ((force != 0) || (global_opts.charset == NULL))
+ {
+ cet_convert_deinit();
+ if (0 == cet_validate_cs(cs_name, &global_opts.charset, &global_opts.charset_name))
+ fatal("Unsupported character set \"%s\"!\n", cs_name);
+ }
+}
+
+
+/* -------------------------------------------------------------------- */
+/* %%% complete data strings transformation %%% */
+/* -------------------------------------------------------------------- */
+
+static char * (*converter) (const char *) = NULL;
+
+/* two converters */
+
+static char *
+cet_convert_to_utf8(const char *str)
+{
+ return cet_str_any_to_utf8(str, global_opts.charset);
+}
+
+static char *
+cet_convert_from_utf8(const char *str)
+{
+ return cet_str_utf8_to_any(str, global_opts.charset);
+}
+
+/* cet_convert_string: internal used within cet_convert_strings process */
+
+char *
+cet_convert_string(char *str)
+{
+ char *res;
+
+ if (str == NULL) return NULL; /* return origin if empty or NULL */
+ else if (*str == '\0') return str;
+
+ res = converter(str);
+ xfree(str);
+ return res;
+}
+
+/* cet_convert_waypt: internal used within cet_convert_strings process */
+
+static void
+cet_convert_waypt(const waypoint *wpt)
+{
+ waypoint *w = (waypoint *)wpt;
+
+ w->shortname = cet_convert_string(wpt->shortname);
+ w->description = cet_convert_string(wpt->description);
+ w->notes = cet_convert_string(wpt->notes);
+ w->url = cet_convert_string(wpt->url);
+ w->url_link_text = cet_convert_string(wpt->url_link_text);
+}
+
+/* cet_convert_route_hdr: internal used within cet_convert_strings process */
+
+static void
+cet_convert_route_hdr(const route_head *route)
+{
+ route_head *rte = (route_head *)route;
+ rte->rte_name = cet_convert_string(route->rte_name);
+ rte->rte_desc = cet_convert_string(route->rte_desc);
+}
+
+/* cet_convert_route_tlr: internal used within cet_convert_strings process */
+
+static void
+cet_convert_route_tlr(const route_head *route)
+{
+}
+
+/* %%% cet_convert_strings (public) %%%
+ *
+ * - Convert all well known strings of GPS data from or to UTF-8 -
+ *
+ * !!! One of "source" or "target" must be internal cet_cs_vec_utf8 or NULL !!! */
+
+void
+cet_convert_strings(const cet_cs_vec_t *source, const cet_cs_vec_t *target, const char *format)
+{
+ char *cs_name_from, *cs_name_to;
+
+// printf("cet_convert_strings: enter\n"); fflush(stdout);
+
+ converter = NULL;
+
+ if ((source == NULL) || (source == &cet_cs_vec_utf8))
+ {
+ if ((target == NULL) || (target == &cet_cs_vec_utf8)) return; /* Nothing to do */
+
+ converter = cet_convert_from_utf8;
+ cs_name_from = (char *)cet_cs_vec_utf8.name;
+ cs_name_to = (char *)target->name;
+ }
+ else
+ {
+ if ((target != NULL) && (target != &cet_cs_vec_utf8))
+ fatal(MYNAME ": Internal error!\n");
+ converter = cet_convert_to_utf8;
+ cs_name_to = (char *)cet_cs_vec_utf8.name;
+ cs_name_from = (char *)source->name;
+ }
+
+ if (global_opts.verbose_status > 0)
+ printf(MYNAME ": Converting from \"%s\" to \"%s\"", cs_name_from, cs_name_to);
+
+ waypt_disp_all(cet_convert_waypt);
+ route_disp_all(cet_convert_route_hdr, cet_convert_route_tlr, cet_convert_waypt);
+ track_disp_all(cet_convert_route_hdr, cet_convert_route_tlr, cet_convert_waypt);
+
+ if (global_opts.verbose_status > 0)
+ printf(", done.\n");
+}
+
+/* %%% cet_disp_character_set_names %%%
+ *
+ * - Put all character set names and aliases to "FILE" - */
+
+void
+cet_disp_character_set_names(FILE *fout)
+{
+ int i, c, ac;
+ cet_cs_vec_t *vec;
+ cet_cs_vec_t **list;
+
+ if (cet_cs_alias_ct == 0) return;
+
+ c = 0;
+ for (vec = cet_cs_vec_root; vec != NULL; vec = vec->next) c++;
+
+ if (cet_cs_vec_ct != c)
+ fatal(MYNAME ": internal error \"%s\"!\n", "cet_disp_character_set_names");
+
+ list = (cet_cs_vec_t **)xcalloc(c, sizeof(*list));
+
+ i = 0; /* fill the list */
+ for (vec = cet_cs_vec_root; vec != NULL; vec = vec->next) list[i++] = vec;
+ qsort(list, c, sizeof(*list), cet_cs_vec_qsort_cb); /* sort list by name */
+
+ ac = 0;
+
+ fprintf(fout, "GPSbabel builtin character sets: (-c option)\n");
+ for (i = 0; i < c; i++)
+ {
+ char **a;
+
+ vec = list[i];
+ fprintf(fout, "\n* %s", vec->name);
+
+ a = (char **)vec->alias;
+ if (a != NULL)
+ {
+ int column = 0;
+ int alias = 0;
+
+ while (*a != NULL)
+ {
+ if (case_ignore_strcmp(*a, vec->name) != 0)
+ {
+ ac++;
+ fprintf(fout, "%s%s%s",
+ (alias++ > 0) ? ", " : "",
+ (column++ % 6 == 0) ? "\n\t" : "",
+ *a);
+ }
+ a++;
+ }
+ }
+ }
+ fprintf(fout, "\n\n");
+ fprintf(fout, "We have %d builtin character sets with %d aliases!\n", c, ac);
+ xfree(list);
+}
--- /dev/null
+/*
+
+ Character encoding transformation - utilities header
+
+ Copyright (C) 2005 Olaf Klein, o.b.klein@t-online.de
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program; if not, write to the Free Software
+ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111 USA
+*/
+
+#ifndef CET_UTIL_H
+#define CET_UTIL_H
+
+#include <ctype.h>
+#include <stdio.h>
+#include "cet.h"
+
+#ifndef NO_EXPAT
+# include <expat.h>
+#endif
+
+cet_cs_vec_t *cet_find_cs_by_name(const char *name);
+void cet_deregister(void);
+
+/* short hand transmissions */
+
+char *cet_str_utf8_to_cp1252(const char *src);
+char *cet_str_cp1252_to_utf8(const char *src);
+extern cet_cs_vec_t cet_cs_vec_cp1252;
+
+char *cet_str_iso8859_1_to_utf8(const char *src);
+char *cet_str_utf8_to_iso8859_1(const char *src);
+extern cet_cs_vec_t cet_cs_vec_iso8859_1;
+
+char *cet_str_iso8859_15_to_utf8(const char *src);
+char *cet_str_utf8_to_iso8859_15(const char *src);
+extern const cet_cs_vec_t cet_cs_vec_iso8859_15;
+
+char *cet_str_utf8_to_us_ascii(const char *src);
+char *cet_str_us_ascii_to_utf8(const char *src);
+extern cet_cs_vec_t cet_cs_vec_ansi_x3_4_1968;
+
+
+extern cet_cs_vec_t cet_cs_vec_utf8;
+
+
+/* Missing defines in older expat libraries | CET-REVIEW */
+
+/* Taken from expat_external.h (Expat 1.95.7) */
+
+#ifndef XML_STATUS_OK
+# define XML_STATUS_OK 1
+#endif
+#ifndef XML_STATUS_ERROR
+# define XML_STATUS_ERROR 0
+#endif
+
+
+#ifndef XMLCALL
+#if defined(XML_USE_MSC_EXTENSIONS)
+#define XMLCALL __cdecl
+#elif defined(__GNUC__) && defined(__i386)
+#define XMLCALL __attribute__((cdecl))
+#else
+/* For any platform which uses this definition and supports more than
+ one calling convention, we need to extend this definition to
+ declare the convention used on that platform, if it's possible to
+ do so.
+
+ If this is the case for your platform, please file a bug report
+ with information on how to identify your platform via the C
+ pre-processor and how to specify the same calling convention as the
+ platform's malloc() implementation.
+*/
+#define XMLCALL
+#endif
+#endif /* not defined XMLCALL */
+
+int XMLCALL cet_lib_expat_UnknownEncodingHandler(void *data, const XML_Char *encoding, XML_Encoding *info);
+
+/* helpers */
+
+char *cet_str_uni_to_any(const short *src, int length, const cet_cs_vec_t *dest_vec);
+char *cet_str_any_to_any(const char *src, const cet_cs_vec_t *src_vec, const cet_cs_vec_t *dest_vec);
+int cet_valid_char(const char *src, const cet_cs_vec_t *vec);
+
+/* gpsbabel extensions */
+
+void cet_convert_init(const char *cs_name, const int force);
+void cet_convert_strings(const cet_cs_vec_t *source, const cet_cs_vec_t *target, const char *format);
+void cet_convert_deinit(void);
+
+void cet_disp_character_set_names(FILE *fout);
+
+#endif
vdata = (char *)rec + sizeof(*rec);
if ( wpt->shortname ) {
- char *sn = str_utf8_to_cp1252(wpt->shortname);
+ char *sn = xstrdup(wpt->shortname);
strncpy( vdata, sn, 16 );
vdata[15] = '\0';
xfree(sn);
if (wpt->gc_data.desc_short.utfstring) {
char *stripped_html = strip_html(&wpt->gc_data.desc_short);
desc_short = xstrdup("\n\n");
- desc_short = xstrappend(desc_short, str_utf8_to_cp1252(stripped_html));
+ desc_short = xstrappend(desc_short, xstrdup(stripped_html));
xfree(stripped_html);
} else {
desc_short = xstrdup("");
if (wpt->gc_data.desc_long.utfstring) {
char *stripped_html = strip_html(&wpt->gc_data.desc_long);
desc_long = xstrdup("\n\n");
- desc_long = xstrappend(desc_long, str_utf8_to_cp1252(stripped_html));
+ desc_long = xstrappend(desc_long, xstrdup(stripped_html));
xfree(stripped_html);
} else {
desc_long = xstrdup("");
}
- desc = wpt->description ? str_utf8_to_cp1252(wpt->description) :
+ desc = wpt->description ? xstrdup(wpt->description) :
xstrdup("");
snprintf(vdata, DESCSZ, "%s%s%s",
vdata += strlen( vdata ) + 1;
if (wpt->gc_data.hint) {
- char *hint = str_utf8_to_cp1252(wpt->gc_data.hint);
+ char *hint = xstrdup(wpt->gc_data.hint);
rec->type = WptCache;
strncpy( vdata, hint, NOTESZ + 1 ) ;
xfree(hint);
data_write,
NULL,
cetus_args,
+ CET_CHARSET_MS_ANSI, 0 /* CET-REVIEW */
};
static XML_Parser psr;
#endif
#include <time.h>
+#include "cet_util.h"
#include "uuid.h"
fatal(MYNAME ":Cannot create XML parser\n");
}
+ XML_SetUnknownEncodingHandler(psr, cet_lib_expat_UnknownEncodingHandler, NULL);
XML_SetElementHandler(psr, ce_start, ce_end);
cdatastr = xcalloc(MY_CBUF,1);
element = xcalloc(MY_CBUF,1);
ce_write,
NULL,
NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
wr_deinit,
data_read,
data_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
description = shortname;
} else if (description) {
char *odesc = description;
- description = str_utf8_to_ascii(odesc);
+ description = xstrdup(odesc);
xfree(odesc);
}
#include <stddef.h>
#include "queue.h"
#include "gbtypes.h"
+#include "cet.h"
+#include "cet_util.h"
/*
unsigned int masked_objective;
int verbose_status; /* set by GUI wrappers for status */
int no_smart_icons;
- int no_smart_names;
+ int no_smart_names;
+ cet_cs_vec_t *charset;
+ char *charset_name;
} global_options;
extern global_options global_opts;
void xcsv_setup_internal_style(const char *style_buf);
void xcsv_read_internal_style(const char *style_buf);
waypoint * find_waypt_by_name(const char *name);
+void waypt_backup(unsigned int *count, queue **head_bak);
+void waypt_restore(unsigned int count, queue *head_bak);
route_head *route_head_alloc(void);
void route_add (waypoint *);
unsigned int route_waypt_count(void);
unsigned int route_count(void);
unsigned int track_count(void);
+void route_backup(unsigned int *count, queue **head_bak);
+void route_restore(unsigned int count, queue *head_bak);
+void track_backup(unsigned int *count, queue **head_bak);
+void track_restore(unsigned int count, queue *head_bak);
/*
* All shortname functions take a shortname handle as the first arg.
ff_write write;
ff_exit exit;
arglist_t *args;
+ char *encode;
+ int fixed_encode;
} ff_vecs_t;
typedef struct style_vecs {
/*
* Character encoding transformations.
*/
-char * str_utf8_to_cp1252(const char * str);
-char * str_utf8_to_ascii(const char * str);
-char * str_iso8859_1_to_utf8(const char *str );
+#define CET_NOT_CONVERTABLE_DEFAULT '$'
+#define CET_CHARSET_ASCII "US-ASCII"
+#define CET_CHARSET_UTF8 "UTF-8"
+#define CET_CHARSET_MS_ANSI "MS-ANSI"
+
+#define str_utf8_to_cp1252(str) cet_str_utf8_to_cp1252((str))
+#define str_cp1252_to_utf8(str) cet_str_cp1252_to_utf8((str))
+
+#define str_utf8_to_iso8859_1(str) cet_str_utf8_to_iso8859_1((str))
+#define str_iso8859_1_to_utf8(str) cet_str_iso8859_1_to_utf8((str))
/* this lives in gpx.c */
time_t xml_parse_time( const char *cdatastr );
gpl_wr_deinit,
gpl_read,
gpl_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_UTF8, 1 /* there is no need to convert anything | CET-REVIEW */
};
data_read,
data_write,
NULL,
- easygps_args
+ easygps_args,
+ CET_CHARSET_ASCII, 0 /* CET REVIEW */
};
data_read,
data_write,
NULL,
- garmin_args
+ garmin_args,
+ CET_CHARSET_MS_ANSI, 0 /* CET-REVIEW */
};
static const char *d103_icons[16] = {
wr_deinit,
data_read,
data_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
gdb_read,
gdb_write,
NULL,
- gdb_args
+ gdb_args,
+ CET_CHARSET_MS_ANSI, 1 /* CET-REVIEW */
};
/*******************************************************************************/
geo_read,
geo_write,
NULL,
- geo_args
+ geo_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
data_read,
data_write,
NULL,
- Args
+ Args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
glogbook_read,
glogbook_write,
NULL,
- glogbook_args
+ glogbook_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
-
google_read,
NULL,
NULL,
- NULL
+ NULL,
+ CET_CHARSET_UTF8, 1 /* CET-REVIEW */
};
data_read,
data_write,
NULL,
- my_args
+ my_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
data_read,
data_write,
NULL,
- gpspilot_args
+ gpspilot_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
{
double lon,lat;
const char *icon_token;
- char *tdesc = str_utf8_to_ascii(wpt->description);
+ char *tdesc = xstrdup(wpt->description);
icon_token = mag_find_token_from_descr(wpt->icon_descr);
wr_deinit,
data_read,
data_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
#include "defs.h"
#include "xmlgeneric.h"
+#include "cet_util.h"
#ifndef NO_EXPAT
#include <expat.h>
static XML_Parser psr;
if (!psr) {
fatal(MYNAME ": Cannot create XML Parser\n");
}
+ XML_SetUnknownEncodingHandler(psr, cet_lib_expat_UnknownEncodingHandler, NULL);
+
cdatastr = vmem_alloc(1, 0);
*((char *)cdatastr.mem) = '\0';
setshort_length(mkshort_handle, short_length);
- fprintf(ofd, "<?xml version=\"1.0\"?>\n");
+ fprintf(ofd, "<?xml version=\"1.0\" encoding=\"%s\"?>\n", global_opts.charset_name);
fprintf(ofd, "<gpx\n version=\"%s\"\n", gpx_wversion);
fprintf(ofd, "creator=\"GPSBabel - http://www.gpsbabel.org\"\n");
fprintf(ofd, "xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n");
gpx_write,
NULL,
gpx_args,
+ CET_CHARSET_UTF8, 0 /* non-fixed to create non UTF-8 XML's for testing | CET-REVIEW */
};
hiketech_read,
hiketech_write,
NULL,
- hiketech_args
+ hiketech_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
wr_deinit,
data_read,
data_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
*/
#include "defs.h"
+#include "cet_util.h"
#if !NO_EXPAT
#include <expat.h>
static XML_Parser psr;
fatal(MYNAME ":Cannot create XML parser\n");
}
+ XML_SetUnknownEncodingHandler(psr, cet_lib_expat_UnknownEncodingHandler, NULL);
XML_SetElementHandler(psr, hsa_ndv_start, hsa_ndv_end);
cdatastr = xcalloc(MY_CBUF,1);
XML_SetCharacterDataHandler(psr, hsa_ndv_cdata);
hsa_ndv_read,
hsa_ndv_write,
NULL,
- hsa_ndv_args
+ hsa_ndv_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
//////////////////////////////////////////////////////////////////////////
NULL,
data_write,
NULL,
- html_args
+ html_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
data_read,
data_write,
NULL,
- igc_args
+ igc_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
kml_read,
kml_write,
NULL,
- kml_args
+ kml_args,
+ CET_CHARSET_UTF8, 1 /* CET-REVIEW */
};
data_read,
data_write,
NULL,
- lowranceusr_args
+ lowranceusr_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
return;
}
- cleansed1 = str_utf8_to_ascii(str);
+ cleansed1 = xstrdup(str);
cleansed2 = m330_cleanse(cleansed1);
strcat(buf, cleansed2);
maggeo_wr_deinit,
maggeo_read,
maggeo_write,
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
wr_deinit,
data_read,
data_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
mag_read,
mag_write,
NULL,
- mag_sargs
+ mag_sargs,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
ff_vecs_t mag_fvecs = {
mag_read,
mag_write,
NULL,
- mag_fargs
+ mag_fargs,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
/*
mag_deinit,
mag_read,
mag_write,
- NULL,
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
#include "defs.h"
+#include "cet.h"
+#include "cet_util.h"
#include <ctype.h>
global_options global_opts;
" -r Process route information\n"
" -t Process track information\n"
" -w Process waypoint information [default]\n"
+" -c Character set for next operation\n"
" -N No smart icons on output\n"
" -x filtername Invoke filter (place between inputs and output) \n"
" -D level Set debug level [%d]\n"
+" -l Print GPSBabel builtin character sets and exit\n"
" -h, -? Print detailed help and exit\n"
" -V Print GPSBabel version and exit\n"
"\n"
int opt_version = 0;
int did_something = 0;
const char *prog_name = argv[0]; /* argv is modified during processing */
+ queue *wpt_head_bak, *rte_head_bak, *trk_head_bak; /* #ifdef UTF8_SUPPORT */
+ unsigned int wpt_ct_bak, rte_ct_bak, trk_ct_bak; /* #ifdef UTF8_SUPPORT */
global_opts.objective = wptdata;
global_opts.masked_objective = NOTHINGMASK; /* this makes the default mask behaviour slightly different */
+ global_opts.charset = NULL; /* #ifdef UTF8_SUPPORT */
+ global_opts.charset_name = NULL; /* #ifdef UTF8_SUPPORT */
#ifdef DEBUG_MEM
debug_mem_open();
debug_mem_output( "\n" );
#endif
+ cet_register();
waypt_init();
route_init();
}
switch (c) {
+ case 'c':
+ optarg = argv[argn][2] ? argv[argn]+2 : argv[++argn];
+ cet_convert_init(optarg, 1);
+ break;
case 'i':
optarg = argv[argn][2]
? argv[argn]+2 : argv[++argn];
}
/* simulates the default behaviour of waypoints */
if (doing_nothing) global_opts.masked_objective |= WPTDATAMASK;
+
+ cet_convert_init(ivecs->encode, ivecs->fixed_encode); /* init by module vec */
+
ivecs->rd_init(fname);
ivecs->read();
ivecs->rd_deinit();
+
+ cet_convert_strings(global_opts.charset, NULL, NULL);
+ cet_convert_deinit();
+
did_something = 1;
break;
case 'F':
if (ovecs->wr_init == NULL) {
fatal ("Format does not support writing.\n");
}
+
+ cet_convert_init(ovecs->encode, ovecs->fixed_encode);
+
+ wpt_ct_bak = -1;
+ rte_ct_bak = -1;
+ trk_ct_bak = -1;
+
+ if (global_opts.charset != &cet_cs_vec_utf8)
+ {
+ waypt_backup(&wpt_ct_bak, &wpt_head_bak);
+ route_backup(&rte_ct_bak, &rte_head_bak);
+ track_backup(&trk_ct_bak, &trk_head_bak);
+
+ cet_convert_strings(NULL, global_opts.charset, NULL);
+ }
+
ovecs->wr_init(ofname);
ovecs->write();
ovecs->wr_deinit();
+
+ cet_convert_deinit();
+
+ if (wpt_ct_bak != -1) waypt_restore(wpt_ct_bak, wpt_head_bak);
+ if (rte_ct_bak != -1) route_restore(rte_ct_bak, rte_head_bak);
+ if (trk_ct_bak != -1) track_restore(trk_ct_bak, trk_head_bak);
}
break;
case 's':
case '?':
usage(argv[0],0);
exit(0);
+ case 'l':
+ cet_disp_character_set_names(stdout);
+ exit(0);
+
}
}
did_something = 1;
/* simulates the default behaviour of waypoints */
if (doing_nothing) global_opts.masked_objective |= WPTDATAMASK;
+
+ cet_convert_init(ivecs->encode, 1);
+
ivecs->rd_init(argv[0]);
ivecs->read();
ivecs->rd_deinit();
- if (argc == 2 && ovecs) {
+
+ cet_convert_strings(global_opts.charset, NULL, NULL);
+ cet_convert_deinit();
+
+ if (argc == 2 && ovecs)
+ {
+ cet_convert_init(ovecs->encode, 1);
+ cet_convert_strings(NULL, global_opts.charset, NULL);
+
ovecs->wr_init(argv[1]);
ovecs->write();
ovecs->wr_deinit();
+
+ cet_convert_deinit();
}
}
else if (argc) {
exit(0);
}
if (ovecs == NULL)
+ {
+ cet_convert_init(CET_CHARSET_ASCII, 1);
+ cet_convert_strings(NULL, global_opts.charset, NULL);
waypt_disp_all(waypt_disp);
+ }
if (!did_something)
fatal ("Nothing to do! Use '%s -h' for command-line options.\n", prog_name);
+ cet_deregister();
waypt_flush_all();
route_flush_all();
exit_vecs();
* them into the Mapsend file.
*/
- tmp = str_utf8_to_ascii(sn);
+ tmp = xstrdup(sn);
c = tmp ? strlen(tmp) : 0;
fwrite(&c, 1, 1, mapsend_file_out);
fwrite(tmp, c, 1, mapsend_file_out);
if (tmp)
xfree(tmp);
- tmp = str_utf8_to_ascii(waypointp->description);
+ tmp = waypointp->description;
if (tmp)
c = strlen(tmp);
else
if (c > 30) c = 30;
fwrite(&c, 1, 1, mapsend_file_out);
fwrite(tmp, c, 1, mapsend_file_out);
- if (tmp)
- xfree(tmp);
/* #, icon, status */
n = ++cnt;
mapsend_wr_deinit,
mapsend_read,
mapsend_wpt_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
icon = mps_converted_icon_number(icon, mps_ver, MAPSOURCE);
/* two NULL (0x0) bytes at end of each string */
- ascii_description = wpt->description ? str_utf8_to_ascii(wpt->description) : xstrdup("");
+ ascii_description = wpt->description ? xstrdup(wpt->description) : xstrdup("");
reclen = strlen(ident) + strlen(ascii_description) + 2;
if ((mps_ver == 4) || (mps_ver == 5)) {
/* v4.06 & V5.0*/
mps_read,
mps_write,
NULL,
- mps_args
+ mps_args,
+ CET_CHARSET_MS_ANSI /* CET-REVIEW */
};
*/
#include "defs.h"
+#include "cet_util.h"
#if !NO_EXPAT
#include <expat.h>
static XML_Parser psr;
fatal(MYNAME ":Cannot create XML parser\n");
}
+ XML_SetUnknownEncodingHandler(psr, cet_lib_expat_UnknownEncodingHandler, NULL);
XML_SetElementHandler(psr, nav_start, nav_end);
}
nav_write,
NULL,
nav_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
data_read,
NULL,
NULL,
- netstumbler_args
+ netstumbler_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
nmea_read,
nmea_write,
NULL,
- nmea_args
+ nmea_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
ovl_read,
ovl_write,
NULL,
- ovl_args
+ ovl_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
data_read,
data_write,
NULL,
- ozi_args
+ ozi_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
NULL,
data_write,
NULL,
- palmdoc_args
+ palmdoc_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
ppdb_read,
ppdb_write,
NULL,
- ppdb_args
+ ppdb_args,
+ "ISO-8859-1"
};
data_read,
data_write,
NULL,
- pcx_args
+ pcx_args,
+ CET_CHARSET_ASCII, 1 /* CET-REVIEW */
};
psit_read,
psit_write,
NULL,
- psit_args
+ psit_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
*/
#include "defs.h"
+#include "cet_util.h"
#include <ctype.h>
#define MYNAME "PSP"
static char *
buffer_washer(char * buff, int buffer_len)
{
+/* original code
int i;
for (i = 0 ; i < buffer_len - 1; i++) {
}
}
+ return (buff);
+*/
+ char *c = cet_str_uni_to_any((const short *)buff, buffer_len >> 1, global_opts.charset);
+ strncpy(buff, c, buffer_len);
+ xfree(c);
return (buff);
}
psp_wr_deinit,
psp_read,
psp_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
data_read,
data_write,
NULL,
- quovadis_args
+ quovadis_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
--- /dev/null
+Group sID sDescription fLat fLong fEasting fNorthing fAlt iColour iSymbol sHyperLink
+new 01 Hohndorf 50.738297 12.683029 -99999999.00 255 1 (null)
+new 0x9E \9e - latin small letter z with caron 50.497971 13.027725 -99999999.00 255 1 (null)
+new 0xC9 É - latin capital letter e with circumflex 50.497971 13.027725 -99999999.00 255 1 (null)
+new 0xF0 ð - latin small letter eth (icelandic) 50.497971 13.027725 -99999999.00 255 1 (null)
+new CS Ovládacà ProhlÃ\9eenà lokálnà sÃte 50.514406 13.638634 -99999999.00 255 1 (null)
+new DA Tåning netværkssøgning áâãäåæéë 56.011734 9.847870 -99999999.00 255 1 (null)
+new DE Himmelmühle äöüÄÖÜß 50.625865 13.060611 -99999999.00 255 1 (null)
+new EO Trasercado de la loka ret 50.495281 13.027645 -99999999.00 255 1 (null)
+new ES Matalascañas Navegación Táliga 37.007446 -6.558838 -99999999.00 255 1 (null)
+new FR Boissière-École Contrôle réseau Mâle 48.679047 1.652069 -99999999.00 255 1 (null)
+new HR Pregledavanje lokalne mre\9ee 50.477937 12.510391 -99999999.00 255 1 (null)
+new HU Hõgyész Vezérlõközpont Hálózat 46.491394 18.424072 -99999999.00 255 1 (null)
+new IS Borgarfjörður 65.522461 -13.823547 -99999999.00 255 1 (null)
+new SK Ovládacie centrum 50.724214 13.524871 -99999999.00 255 1 (null)
+new X1 \9eðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É× 50.497971 13.027725 -99999999.00 255 1 (null)
+new X2 \9eðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É× 50.497971 13.027725 -99999999.00 255 1 (null)
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<gpx
+ version="1.0"
+creator="GPSBabel - http://www.gpsbabel.org"
+xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+xmlns="http://www.topografix.com/GPX/1/0"
+xsi:schemaLocation="http://www.topografix.com/GPX/1/0 http://www.topografix.com/GPX/1/0/gpx.xsd">
+<time>1970-01-01T00:00:00Z</time>
+<bounds minlat="37.007446289" minlon ="-13.823547363" maxlat="65.522460938" maxlon="18.424072266" />
+<wpt lat="50.738296509" lon="12.683029175">
+<time>2005-07-14T10:12:49Z</time>
+ <name>01</name>
+ <cmt>Hohndorf</cmt>
+ <desc>Hohndorf</desc>
+ <sym>City (Small)</sym>
+</wpt>
+<wpt lat="50.497970581" lon="13.027725220">
+<time>2005-07-14T14:04:15Z</time>
+ <name>0x9E</name>
+ <cmt>ž - latin small letter z with caron</cmt>
+ <desc>ž - latin small letter z with caron</desc>
+ <sym>City (Small)</sym>
+</wpt>
+<wpt lat="50.497970581" lon="13.027725220">
+<time>2005-07-14T14:07:22Z</time>
+ <name>0xC9</name>
+ <cmt>É - latin capital letter e with circumflex</cmt>
+ <desc>É - latin capital letter e with circumflex</desc>
+ <sym>City (Small)</sym>
+</wpt>
+<wpt lat="50.497970581" lon="13.027725220">
+<time>2005-07-14T14:06:05Z</time>
+ <name>0xF0</name>
+ <cmt>ð - latin small letter eth (icelandic)</cmt>
+ <desc>ð - latin small letter eth (icelandic)</desc>
+ <sym>City (Small)</sym>
+</wpt>
+<wpt lat="50.514405901" lon="13.638633778">
+<time>2005-07-14T10:43:00Z</time>
+ <name>CS</name>
+ <cmt>OvládacÃ, ProhlÞenà lokálnà sÃte</cmt>
+ <desc> Czechia (cz) </desc>
+ <sym>Waypoint</sym>
+</wpt>
+<wpt lat="56.011734009" lon="9.847869873">
+<time>2005-07-14T09:48:47Z</time>
+ <name>DA</name>
+ <cmt>Tåning, netværkssøgning, áâãäåæéë</cmt>
+ <desc>Tåning, netværkssøgning, áâãäåæéë</desc>
+ <sym>Waypoint</sym>
+</wpt>
+<wpt lat="50.625865096" lon="13.060610946">
+<time>2005-07-14T09:41:43Z</time>
+ <name>DE</name>
+ <cmt>Himmelmühle, ä,ö,ü,Ä,Ö,Ü,ß</cmt>
+ <desc>ermany (de)</desc>
+ <sym>Waypoint</sym>
+</wpt>
+<wpt lat="50.495280828" lon="13.027644670">
+<time>2005-07-14T13:20:14Z</time>
+ <name>EO</name>
+ <cmt>Trasercado de la loka ret</cmt>
+ <desc>?? (oe)</desc>
+ <sym>Waypoint</sym>
+</wpt>
+<wpt lat="37.007446289" lon="-6.558837891">
+<time>2005-07-14T09:39:12Z</time>
+ <name>ES</name>
+ <cmt>Matalascañas, Navegación, Táliga</cmt>
+ <desc>Matalascañas, Navegación, Táliga</desc>
+ <sym>Waypoint</sym>
+</wpt>
+<wpt lat="48.679046631" lon="1.652069092">
+<time>2005-07-14T09:39:17Z</time>
+ <name>FR</name>
+ <cmt>Boissière-École, Contrôle, réseau, Mâle</cmt>
+ <desc>Boissière-École, Contrôle, réseau, Mâle</desc>
+ <sym>Waypoint</sym>
+</wpt>
+<wpt lat="50.477937413" lon="12.510390887">
+<time>2005-07-14T09:28:22Z</time>
+ <name>HR</name>
+ <cmt>Pregledavanje lokalne mreže</cmt>
+ <desc>roatia (local name: Hrvatska) (hr)</desc>
+ <sym>Waypoint</sym>
+</wpt>
+<wpt lat="46.491394043" lon="18.424072266">
+<time>2005-07-14T09:43:42Z</time>
+ <name>HU</name>
+ <cmt>Hõgyész, Vezérlõközpont, Hálózat</cmt>
+ <desc>Hõgyész, Vezérlõközpont, Hálózat</desc>
+ <sym>City (Small)</sym>
+</wpt>
+<wpt lat="65.522460938" lon="-13.823547363">
+<time>2005-07-14T09:39:22Z</time>
+ <name>IS</name>
+ <cmt>Borgarfjörður</cmt>
+ <desc>Borgarfjörður</desc>
+ <sym>Waypoint</sym>
+</wpt>
+<wpt lat="50.724214325" lon="13.524870649">
+<time>2005-07-14T09:34:53Z</time>
+ <name>SK</name>
+ <cmt>Ovládacie centrum</cmt>
+ <desc>ei D09544,Neuhausen/Cämmerswalde</desc>
+ <sym>Waypoint</sym>
+</wpt>
+<wpt lat="50.497970581" lon="13.027725220">
+<time>2005-07-14T11:17:31Z</time>
+ <name>X1</name>
+ <cmt>žðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É×</cmt>
+ <desc>žðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É×</desc>
+ <sym>Diamond, Blue</sym>
+</wpt>
+<wpt lat="50.497970581" lon="13.027725220">
+<time>2005-07-14T11:18:06Z</time>
+ <name>X2</name>
+ <cmt>žðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É×</cmt>
+ <desc>žðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É×</desc>
+ <sym>Diamond, Blue</sym>
+</wpt>
+</gpx>
--- /dev/null
+Group sID sDescription fLat fLong fEasting fNorthing fAlt iColour iSymbol sHyperLink
+new 01 Hohndorf 50.738297 12.683029 -99999999.00 255 1 (null)
+new 0x9E $ - latin small letter z with caron 50.497971 13.027725 -99999999.00 255 1 (null)
+new 0xC9 É - latin capital letter e with circumflex 50.497971 13.027725 -99999999.00 255 1 (null)
+new 0xF0 ð - latin small letter eth (icelandic) 50.497971 13.027725 -99999999.00 255 1 (null)
+new CS Ovládacà ProhlÃ$enà lokálnà sÃte 50.514406 13.638634 -99999999.00 255 1 (null)
+new DA Tåning netværkssøgning áâãäåæéë 56.011734 9.847870 -99999999.00 255 1 (null)
+new DE Himmelmühle äöüÄÖÜß 50.625865 13.060611 -99999999.00 255 1 (null)
+new EO Trasercado de la loka ret 50.495281 13.027645 -99999999.00 255 1 (null)
+new ES Matalascañas Navegación Táliga 37.007446 -6.558838 -99999999.00 255 1 (null)
+new FR Boissière-École Contrôle réseau Mâle 48.679047 1.652069 -99999999.00 255 1 (null)
+new HR Pregledavanje lokalne mre$e 50.477937 12.510391 -99999999.00 255 1 (null)
+new HU Hõgyész Vezérlõközpont Hálózat 46.491394 18.424072 -99999999.00 255 1 (null)
+new IS Borgarfjörður 65.522461 -13.823547 -99999999.00 255 1 (null)
+new SK Ovládacie centrum 50.724214 13.524871 -99999999.00 255 1 (null)
+new X1 $ðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É× 50.497971 13.027725 -99999999.00 255 1 (null)
+new X2 $ðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É× 50.497971 13.027725 -99999999.00 255 1 (null)
--- /dev/null
+Group sID sDescription fLat fLong fEasting fNorthing fAlt iColour iSymbol sHyperLink
+new 01 Hohndorf 50.738297 12.683029 -99999999.00 255 1 (null)
+new 0x9E ¾ - latin small letter z with caron 50.497971 13.027725 -99999999.00 255 1 (null)
+new 0xC9 É - latin capital letter e with circumflex 50.497971 13.027725 -99999999.00 255 1 (null)
+new 0xF0 ð - latin small letter eth (icelandic) 50.497971 13.027725 -99999999.00 255 1 (null)
+new CS Ovládacà Prohlþenà lokálnà sÃte 50.514406 13.638634 -99999999.00 255 1 (null)
+new DA Tåning netværkssøgning áâãäåæéë 56.011734 9.847870 -99999999.00 255 1 (null)
+new DE Himmelmühle äöüÄÖÜß 50.625865 13.060611 -99999999.00 255 1 (null)
+new EO Trasercado de la loka ret 50.495281 13.027645 -99999999.00 255 1 (null)
+new ES Matalascañas Navegación Táliga 37.007446 -6.558838 -99999999.00 255 1 (null)
+new FR Boissière-École Contrôle réseau Mâle 48.679047 1.652069 -99999999.00 255 1 (null)
+new HR Pregledavanje lokalne mre¾e 50.477937 12.510391 -99999999.00 255 1 (null)
+new HU Hõgyész Vezérlõközpont Hálózat 46.491394 18.424072 -99999999.00 255 1 (null)
+new IS Borgarfjörður 65.522461 -13.823547 -99999999.00 255 1 (null)
+new SK Ovládacie centrum 50.724214 13.524871 -99999999.00 255 1 (null)
+new X1 ¾ðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É× 50.497971 13.027725 -99999999.00 255 1 (null)
+new X2 ¾ðÉéÀà ÈèÙùÂâÊêÎîÄäËëÖöÜüÆæÅ娸ÇçÑñ²³½É× 50.497971 13.027725 -99999999.00 255 1 (null)
--- /dev/null
+Group sID sDescription fLat fLong fEasting fNorthing fAlt iColour iSymbol sHyperLink
+new 01 Hohndorf 50.738297 12.683029 -99999999.00 255 1 (null)
+new 0x9E $ - latin small letter z with caron 50.497971 13.027725 -99999999.00 255 1 (null)
+new 0xC9 \83 - latin capital letter e with circumflex 50.497971 13.027725 -99999999.00 255 1 (null)
+new 0xF0 ð - latin small letter eth (icelandic) 50.497971 13.027725 -99999999.00 255 1 (null)
+new CS Ovl\87dac\92 Prohl\92$en\92 lok\87ln\92 s\92te 50.514406 13.638634 -99999999.00 255 1 (null)
+new DA T\8cning netv¾rkss¿gning \87\89\8b\8a\8c¾\8e\91 56.011734 9.847870 -99999999.00 255 1 (null)
+new DE Himmelm\9fhle \8a\9a\9f\80\85\86§ 50.625865 13.060611 -99999999.00 255 1 (null)
+new EO Trasercado de la loka ret 50.495281 13.027645 -99999999.00 255 1 (null)
+new ES Matalasca\96as Navegaci\97n T\87liga 37.007446 -6.558838 -99999999.00 255 1 (null)
+new FR Boissi\8fre-\83cole Contr\99le r\8eseau M\89le 48.679047 1.652069 -99999999.00 255 1 (null)
+new HR Pregledavanje lokalne mre$e 50.477937 12.510391 -99999999.00 255 1 (null)
+new HU H\9bgy\8esz Vez\8erl\9bk\9azpont H\87l\97zat 46.491394 18.424072 -99999999.00 255 1 (null)
+new IS Borgarfj\9arður 65.522461 -13.823547 -99999999.00 255 1 (null)
+new SK Ovl\87dacie centrum 50.724214 13.524871 -99999999.00 255 1 (null)
+new X1 $ð\83\8eË\88é\8fô\9då\89æ\90ë\94\80\8aè\91\85\9a\86\9f®¾\81\8c¯¿\82\8d\84\96²³½\83× 50.497971 13.027725 -99999999.00 255 1 (null)
+new X2 $ð\83\8eË\88é\8fô\9då\89æ\90ë\94\80\8aè\91\85\9a\86\9f®¾\81\8c¯¿\82\8d\84\96²³½\83× 50.497971 13.027725 -99999999.00 255 1 (null)
-<?xml version="1.0"?>
+<?xml version="1.0" encoding="UTF-8"?>
<gpx
version="1.0"
creator="GPSBabel - http://www.gpsbabel.org"
<desc>B2 Hofer Strasse</desc>
</wpt>
<wpt lat="50.393720000" lon="11.867560000">
- <name>bei D 95183 Töpen </name>
+ <name>bei D 95183 Töpen </name>
<cmt>B2\Hofer Strasse</cmt>
<desc>B2\Hofer Strasse</desc>
</wpt>
<desc>L2357</desc>
</wpt>
<wpt lat="50.558740000" lon="11.736880000">
- <name>bei D 07907 Schleiz/Möschlitz </name>
+ <name>bei D 07907 Schleiz/Möschlitz </name>
<cmt>L2357</cmt>
<desc>L2357</desc>
</wpt>
<wpt lat="50.608090000" lon="11.653350000">
- <name>bei D 07924 Ziegenrück </name>
+ <name>bei D 07924 Ziegenrück </name>
<cmt>L2350\Plothental</cmt>
<desc>L2350\Plothental</desc>
</wpt>
</wpt>
<wpt lat="50.568210000" lon="11.907330000">
<name>bei D 07907 Schleiz/Langenbuch </name>
- <cmt>K304\Lössauer Strasse</cmt>
- <desc>K304\Lössauer Strasse</desc>
+ <cmt>K304\Lössauer Strasse</cmt>
+ <desc>K304\Lössauer Strasse</desc>
</wpt>
<wpt lat="50.575210000" lon="11.991270000">
<name>bei D 07952 Pausa/Oberreichenau </name>
- <cmt>S316\Am Mühlgraben</cmt>
- <desc>S316\Am Mühlgraben</desc>
+ <cmt>S316\Am Mühlgraben</cmt>
+ <desc>S316\Am Mühlgraben</desc>
</wpt>
<wpt lat="50.541330000" lon="12.081960000">
<name>bei D 08548 Syrau </name>
<desc>B282/E49\Hauptstrasse</desc>
</wpt>
<wpt lat="50.504660000" lon="12.142140000">
- <name>bei D 08525 Plauen/Preißelpöhl </name>
+ <name>bei D 08525 Plauen/Preißelpöhl </name>
<cmt>Martin-Luther-Strasse</cmt>
<desc>Martin-Luther-Strasse</desc>
</wpt>
<desc>B173\Hauptstrasse</desc>
</wpt>
<wpt lat="50.546070000" lon="12.218730000">
- <name>bei D 08543 Pöhl/Helmsgrün </name>
- <cmt>K7880\Helmsgrün-Dorfstrasse</cmt>
- <desc>K7880\Helmsgrün-Dorfstrasse</desc>
+ <name>bei D 08543 Pöhl/Helmsgrün </name>
+ <cmt>K7880\Helmsgrün-Dorfstrasse</cmt>
+ <desc>K7880\Helmsgrün-Dorfstrasse</desc>
</wpt>
<wpt lat="50.566740000" lon="12.226250000">
- <name>bei D 08543 Herlasgrün </name>
- <cmt>K7811\Herlasgrün-Dorfstrasse</cmt>
- <desc>K7811\Herlasgrün-Dorfstrasse</desc>
+ <name>bei D 08543 Herlasgrün </name>
+ <cmt>K7811\Herlasgrün-Dorfstrasse</cmt>
+ <desc>K7811\Herlasgrün-Dorfstrasse</desc>
</wpt>
<wpt lat="50.624630000" lon="12.202870000">
<name>bei D 07985 Elsterberg/Reuth </name>
<desc>B173</desc>
</wpt>
<wpt lat="50.676090000" lon="12.405090000">
- <name>D 08115 Schönfels </name>
+ <name>D 08115 Schönfels </name>
<cmt>K9351\Zwickauer Strasse</cmt>
<desc>K9351\Zwickauer Strasse</desc>
</wpt>
</wpt>
<wpt lat="50.508270000" lon="12.397900000">
<name>bei D 08209 Auerbach </name>
- <cmt>B169\Göltzschtalstrasse</cmt>
- <desc>B169\Göltzschtalstrasse</desc>
+ <cmt>B169\Göltzschtalstrasse</cmt>
+ <desc>B169\Göltzschtalstrasse</desc>
</wpt>
<wpt lat="50.479200000" lon="12.424870000">
<name>bei D 08209 Auerbach/Beerheide </name>
- <cmt>K7833\Rempesgrüner Strasse</cmt>
- <desc>K7833\Rempesgrüner Strasse</desc>
+ <cmt>K7833\Rempesgrüner Strasse</cmt>
+ <desc>K7833\Rempesgrüner Strasse</desc>
</wpt>
<wpt lat="50.503030000" lon="12.533360000">
- <name>D 08304 Schönheide </name>
+ <name>D 08304 Schönheide </name>
<cmt>S278\Hauptstrasse</cmt>
<desc>S278\Hauptstrasse</desc>
</wpt>
<wpt lat="50.458250000" lon="12.488440000">
- <name>bei D 08262 Tannenbergsthal/Jägersgrün </name>
- <cmt>B283\Schönheider Strasse</cmt>
- <desc>B283\Schönheider Strasse</desc>
+ <name>bei D 08262 Tannenbergsthal/Jägersgrün </name>
+ <cmt>B283\Schönheider Strasse</cmt>
+ <desc>B283\Schönheider Strasse</desc>
</wpt>
<wpt lat="50.434530000" lon="12.461120000">
<name>bei D 08262 Tannenbergsthal </name>
<desc>B283\Klingenthaler Strasse</desc>
</wpt>
<wpt lat="50.384530000" lon="12.456220000">
- <name>bei D 08248 Klingenthal/Brunndöbra </name>
+ <name>bei D 08248 Klingenthal/Brunndöbra </name>
<cmt>S304\Falkensteiner Strasse</cmt>
<desc>S304\Falkensteiner Strasse</desc>
</wpt>
<wpt lat="50.419640000" lon="12.399730000">
- <name>bei D 08223 Grünbach-Muldenberg </name>
+ <name>bei D 08223 Grünbach-Muldenberg </name>
<cmt>S302/S304</cmt>
<desc>S302/S304</desc>
</wpt>
<wpt lat="50.446180000" lon="12.364590000">
- <name>bei D 08223 Grünbach </name>
+ <name>bei D 08223 Grünbach </name>
<cmt>S304\Bahnhofstrasse</cmt>
<desc>S304\Bahnhofstrasse</desc>
</wpt>
<wpt lat="50.400420000" lon="12.337200000">
- <name>bei D 08261 Schöneck </name>
+ <name>bei D 08261 Schöneck </name>
<cmt>S301</cmt>
<desc>S301</desc>
</wpt>
<desc>B283</desc>
</wpt>
<wpt lat="50.271540000" lon="12.321940000">
- <name>bei D 08258 Landwüst </name>
+ <name>bei D 08258 Landwüst </name>
<cmt>K7844\Rauner Strasse</cmt>
<desc>K7844\Rauner Strasse</desc>
</wpt>
<desc>K7854\Oelsnitzer Strasse</desc>
</wpt>
<wpt lat="50.404490000" lon="12.063910000">
- <name>bei D 08538 Burgstein/Dröda </name>
+ <name>bei D 08538 Burgstein/Dröda </name>
<cmt>S310\Bobenneukirchener Strasse</cmt>
<desc>S310\Bobenneukirchener Strasse</desc>
</wpt>
<desc>B2</desc>
</rtept>
<rtept lat="50.393720000" lon="11.867560000">
- <name>bei D 95183 Töpen </name>
+ <name>bei D 95183 Töpen </name>
<cmt>B2\Hofer Strasse</cmt>
<desc>B2\Hofer Strasse</desc>
</rtept>
<name>rechts abbiegen</name>
</rtept>
<rtept lat="50.475460000" lon="11.652270000">
- <name>in Schönbrunn links abbiegen auf Schönbrunn</name>
- <cmt>Schönbrunn</cmt>
- <desc>Schönbrunn</desc>
+ <name>in Schönbrunn links abbiegen auf Schönbrunn</name>
+ <cmt>Schönbrunn</cmt>
+ <desc>Schönbrunn</desc>
</rtept>
<rtept lat="50.475750000" lon="11.652890000">
- <name>links abbiegen auf Schönbrunn</name>
- <cmt>Schönbrunn</cmt>
- <desc>Schönbrunn</desc>
+ <name>links abbiegen auf Schönbrunn</name>
+ <cmt>Schönbrunn</cmt>
+ <desc>Schönbrunn</desc>
</rtept>
<rtept lat="50.476670000" lon="11.652930000">
- <name>halb rechts halten auf Schönbrunn</name>
- <cmt>Schönbrunn</cmt>
- <desc>Schönbrunn</desc>
+ <name>halb rechts halten auf Schönbrunn</name>
+ <cmt>Schönbrunn</cmt>
+ <desc>Schönbrunn</desc>
</rtept>
<rtept lat="50.477110000" lon="11.653620000">
<name>geradeaus weiter auf L1095 </name>
<desc>L2357</desc>
</rtept>
<rtept lat="50.558740000" lon="11.736880000">
- <name>bei D 07907 Schleiz/Möschlitz </name>
+ <name>bei D 07907 Schleiz/Möschlitz </name>
<cmt>L2357</cmt>
<desc>L2357</desc>
</rtept>
<name>links abbiegen</name>
</rtept>
<rtept lat="50.570230000" lon="11.729630000">
- <name>in Grochwitz halb rechts halten auf Mühlenstrasse</name>
- <cmt>Mühlenstrasse</cmt>
- <desc>Mühlenstrasse</desc>
+ <name>in Grochwitz halb rechts halten auf Mühlenstrasse</name>
+ <cmt>Mühlenstrasse</cmt>
+ <desc>Mühlenstrasse</desc>
</rtept>
<rtept lat="50.571140000" lon="11.730220000">
<name>geradeaus weiter auf Sackgasse</name>
<desc>L1103</desc>
</rtept>
<rtept lat="50.605660000" lon="11.651000000">
- <name>in Ziegenrück halb links halten auf Schleizer Strasse (L1103)</name>
+ <name>in Ziegenrück halb links halten auf Schleizer Strasse (L1103)</name>
<cmt>Schleizer Strasse (L1103)</cmt>
<desc>Schleizer Strasse (L1103)</desc>
</rtept>
<desc>Plothental (L2350)</desc>
</rtept>
<rtept lat="50.608090000" lon="11.653350000">
- <name>bei D 07924 Ziegenrück </name>
+ <name>bei D 07924 Ziegenrück </name>
<cmt>L2350\Plothental</cmt>
<desc>L2350\Plothental</desc>
</rtept>
<desc>B2</desc>
</rtept>
<rtept lat="50.603620000" lon="11.823910000">
- <name>in Oettersdorf links abbiegen auf Löhmaer Weg (K301)</name>
- <cmt>Löhmaer Weg (K301)</cmt>
- <desc>Löhmaer Weg (K301)</desc>
+ <name>in Oettersdorf links abbiegen auf Löhmaer Weg (K301)</name>
+ <cmt>Löhmaer Weg (K301)</cmt>
+ <desc>Löhmaer Weg (K301)</desc>
</rtept>
<rtept lat="50.604720000" lon="11.825820000">
- <name>rechts abbiegen auf Löhmaer Weg (K301)</name>
- <cmt>Löhmaer Weg (K301)</cmt>
- <desc>Löhmaer Weg (K301)</desc>
+ <name>rechts abbiegen auf Löhmaer Weg (K301)</name>
+ <cmt>Löhmaer Weg (K301)</cmt>
+ <desc>Löhmaer Weg (K301)</desc>
</rtept>
<rtept lat="50.602840000" lon="11.828100000">
- <name>links abbiegen auf Löhmaer Weg (K301)</name>
- <cmt>Löhmaer Weg (K301)</cmt>
- <desc>Löhmaer Weg (K301)</desc>
+ <name>links abbiegen auf Löhmaer Weg (K301)</name>
+ <cmt>Löhmaer Weg (K301)</cmt>
+ <desc>Löhmaer Weg (K301)</desc>
</rtept>
<rtept lat="50.614300000" lon="11.849910000">
<name>rechts abbiegen</name>
</rtept>
<rtept lat="50.611660000" lon="11.851660000">
- <name>in Löhma links abbiegen auf Ortsstrasse</name>
+ <name>in Löhma links abbiegen auf Ortsstrasse</name>
<cmt>Ortsstrasse</cmt>
<desc>Ortsstrasse</desc>
</rtept>
<desc>Dorfstrasse</desc>
</rtept>
<rtept lat="50.587800000" lon="11.886210000">
- <name>in Lössau links abbiegen</name>
+ <name>in Lössau links abbiegen</name>
</rtept>
<rtept lat="50.568210000" lon="11.907330000">
<name>bei D 07907 Schleiz/Langenbuch </name>
- <cmt>K304\Lössauer Strasse</cmt>
- <desc>K304\Lössauer Strasse</desc>
+ <cmt>K304\Lössauer Strasse</cmt>
+ <desc>K304\Lössauer Strasse</desc>
</rtept>
<rtept lat="50.566910000" lon="11.907870000">
<name>in Langenbuch links abbiegen auf Thierbacher Strasse (L2348)</name>
<desc>Plauensche Strasse (S316)</desc>
</rtept>
<rtept lat="50.576240000" lon="11.990570000">
- <name>in Oberreichenau halb links halten auf Am Mühlgraben (S316)</name>
- <cmt>Am Mühlgraben (S316)</cmt>
- <desc>Am Mühlgraben (S316)</desc>
+ <name>in Oberreichenau halb links halten auf Am Mühlgraben (S316)</name>
+ <cmt>Am Mühlgraben (S316)</cmt>
+ <desc>Am Mühlgraben (S316)</desc>
</rtept>
<rtept lat="50.575210000" lon="11.991270000">
<name>bei D 07952 Pausa/Oberreichenau </name>
- <cmt>S316\Am Mühlgraben</cmt>
- <desc>S316\Am Mühlgraben</desc>
+ <cmt>S316\Am Mühlgraben</cmt>
+ <desc>S316\Am Mühlgraben</desc>
</rtept>
<rtept lat="50.542020000" lon="12.081040000">
<name>in Syrau halb rechts halten auf B282/E49 Hauptstrasse</name>
<desc>Martin-Luther-Strasse</desc>
</rtept>
<rtept lat="50.504660000" lon="12.142140000">
- <name>bei D 08525 Plauen/Preißelpöhl </name>
+ <name>bei D 08525 Plauen/Preißelpöhl </name>
<cmt>Martin-Luther-Strasse</cmt>
<desc>Martin-Luther-Strasse</desc>
</rtept>
<desc>B173 Hammerstrasse</desc>
</rtept>
<rtept lat="50.497700000" lon="12.182310000">
- <name>links abbiegen auf Voigtsgrüner Weg (K6605)</name>
- <cmt>Voigtsgrüner Weg (K6605)</cmt>
- <desc>Voigtsgrüner Weg (K6605)</desc>
+ <name>links abbiegen auf Voigtsgrüner Weg (K6605)</name>
+ <cmt>Voigtsgrüner Weg (K6605)</cmt>
+ <desc>Voigtsgrüner Weg (K6605)</desc>
</rtept>
<rtept lat="50.506420000" lon="12.194890000">
<name>rechts abbiegen auf Zum Plom</name>
<desc>B173 Hauptstrasse</desc>
</rtept>
<rtept lat="50.524530000" lon="12.244410000">
- <name>links abbiegen auf Gansgrüner Strasse (K7880)</name>
- <cmt>Gansgrüner Strasse (K7880)</cmt>
- <desc>Gansgrüner Strasse (K7880)</desc>
+ <name>links abbiegen auf Gansgrüner Strasse (K7880)</name>
+ <cmt>Gansgrüner Strasse (K7880)</cmt>
+ <desc>Gansgrüner Strasse (K7880)</desc>
</rtept>
<rtept lat="50.524640000" lon="12.244230000">
- <name>links abbiegen auf Gansgrüner Strasse (K7880)</name>
- <cmt>Gansgrüner Strasse (K7880)</cmt>
- <desc>Gansgrüner Strasse (K7880)</desc>
+ <name>links abbiegen auf Gansgrüner Strasse (K7880)</name>
+ <cmt>Gansgrüner Strasse (K7880)</cmt>
+ <desc>Gansgrüner Strasse (K7880)</desc>
</rtept>
<rtept lat="50.528170000" lon="12.221450000">
- <name>in Gansgrün links abbiegen auf Dorfstrasse</name>
+ <name>in Gansgrün links abbiegen auf Dorfstrasse</name>
<cmt>Dorfstrasse</cmt>
<desc>Dorfstrasse</desc>
</rtept>
<name>halb links halten</name>
</rtept>
<rtept lat="50.546070000" lon="12.218730000">
- <name>bei D 08543 Pöhl/Helmsgrün </name>
- <cmt>K7880\Helmsgrün-Dorfstrasse</cmt>
- <desc>K7880\Helmsgrün-Dorfstrasse</desc>
+ <name>bei D 08543 Pöhl/Helmsgrün </name>
+ <cmt>K7880\Helmsgrün-Dorfstrasse</cmt>
+ <desc>K7880\Helmsgrün-Dorfstrasse</desc>
</rtept>
<rtept lat="50.548640000" lon="12.219230000">
- <name>in Helmsgrün halb rechts halten</name>
+ <name>in Helmsgrün halb rechts halten</name>
</rtept>
<rtept lat="50.566180000" lon="12.225640000">
- <name>in Herlasgrün rechts abbiegen auf Herlasgrün-Dorfstrasse (K7811)</name>
- <cmt>Herlasgrün-Dorfstrasse (K7811)</cmt>
- <desc>Herlasgrün-Dorfstrasse (K7811)</desc>
+ <name>in Herlasgrün rechts abbiegen auf Herlasgrün-Dorfstrasse (K7811)</name>
+ <cmt>Herlasgrün-Dorfstrasse (K7811)</cmt>
+ <desc>Herlasgrün-Dorfstrasse (K7811)</desc>
</rtept>
<rtept lat="50.566740000" lon="12.226250000">
- <name>bei D 08543 Herlasgrün </name>
- <cmt>K7811\Herlasgrün-Dorfstrasse</cmt>
- <desc>K7811\Herlasgrün-Dorfstrasse</desc>
+ <name>bei D 08543 Herlasgrün </name>
+ <cmt>K7811\Herlasgrün-Dorfstrasse</cmt>
+ <desc>K7811\Herlasgrün-Dorfstrasse</desc>
</rtept>
<rtept lat="50.567370000" lon="12.227000000">
- <name>links abbiegen auf Herlasgrün-Christgrüner Strasse</name>
- <cmt>Herlasgrün-Christgrüner Strasse</cmt>
- <desc>Herlasgrün-Christgrüner Strasse</desc>
+ <name>links abbiegen auf Herlasgrün-Christgrüner Strasse</name>
+ <cmt>Herlasgrün-Christgrüner Strasse</cmt>
+ <desc>Herlasgrün-Christgrüner Strasse</desc>
</rtept>
<rtept lat="50.569600000" lon="12.224910000">
- <name>geradeaus weiter auf Christgrüner Strasse</name>
- <cmt>Christgrüner Strasse</cmt>
- <desc>Christgrüner Strasse</desc>
+ <name>geradeaus weiter auf Christgrüner Strasse</name>
+ <cmt>Christgrüner Strasse</cmt>
+ <desc>Christgrüner Strasse</desc>
</rtept>
<rtept lat="50.575660000" lon="12.221830000">
- <name>rechts abbiegen auf Dreckschänke (S297)</name>
- <cmt>Dreckschänke (S297)</cmt>
- <desc>Dreckschänke (S297)</desc>
+ <name>rechts abbiegen auf Dreckschänke (S297)</name>
+ <cmt>Dreckschänke (S297)</cmt>
+ <desc>Dreckschänke (S297)</desc>
</rtept>
<rtept lat="50.578200000" lon="12.231830000">
<name>links abbiegen auf S298</name>
<desc>S298</desc>
</rtept>
<rtept lat="50.590870000" lon="12.216020000">
- <name>in Reimersgrün links abbiegen</name>
+ <name>in Reimersgrün links abbiegen</name>
</rtept>
<rtept lat="50.598770000" lon="12.198880000">
<name>halb rechts halten</name>
</rtept>
<rtept lat="50.605680000" lon="12.187530000">
- <name>in Coschütz rechts abbiegen auf Friedensstrasse (K7887)</name>
+ <name>in Coschütz rechts abbiegen auf Friedensstrasse (K7887)</name>
<cmt>Friedensstrasse (K7887)</cmt>
<desc>Friedensstrasse (K7887)</desc>
</rtept>
<desc>B173/B94 Klinkhardtstrasse</desc>
</rtept>
<rtept lat="50.624730000" lon="12.291980000">
- <name>links abbiegen auf B173/B94 Dr.-Külz-Strasse</name>
- <cmt>B173/B94 Dr.-Külz-Strasse</cmt>
- <desc>B173/B94 Dr.-Külz-Strasse</desc>
+ <name>links abbiegen auf B173/B94 Dr.-Külz-Strasse</name>
+ <cmt>B173/B94 Dr.-Külz-Strasse</cmt>
+ <desc>B173/B94 Dr.-Külz-Strasse</desc>
</rtept>
<rtept lat="50.628460000" lon="12.285400000">
<name>rechts abbiegen auf B173 Friedensstrasse</name>
<desc>B173</desc>
</rtept>
<rtept lat="50.676760000" lon="12.408650000">
- <name>in Schönfels links abbiegen auf Stenner Strasse</name>
+ <name>in Schönfels links abbiegen auf Stenner Strasse</name>
<cmt>Stenner Strasse</cmt>
<desc>Stenner Strasse</desc>
</rtept>
<desc>Zwickauer Strasse (K9351)</desc>
</rtept>
<rtept lat="50.676090000" lon="12.405090000">
- <name>D 08115 Schönfels </name>
+ <name>D 08115 Schönfels </name>
<cmt>K9351\Zwickauer Strasse</cmt>
<desc>K9351\Zwickauer Strasse</desc>
</rtept>
<desc>B173 Dr.-Friedrichs-Ring</desc>
</rtept>
<rtept lat="50.714820000" lon="12.499450000">
- <name>geradeaus weiter auf B173 Glück-Auf-Brücke/Äussere Dresdner Strasse</name>
- <cmt>B173 Glück-Auf-Brücke/Äussere Dresdner Strasse</cmt>
- <desc>B173 Glück-Auf-Brücke/Äussere Dresdner Strasse</desc>
+ <name>geradeaus weiter auf B173 Glück-Auf-Brücke/Äussere Dresdner Strasse</name>
+ <cmt>B173 Glück-Auf-Brücke/Äussere Dresdner Strasse</cmt>
+ <desc>B173 Glück-Auf-Brücke/Äussere Dresdner Strasse</desc>
</rtept>
<rtept lat="50.745140000" lon="12.596660000">
<name>rechts abbiegen auf Dresdner Strasse</name>
<desc>Dresdner Strasse</desc>
</rtept>
<rtept lat="50.747100000" lon="12.606600000">
- <name>geradeaus weiter auf Äussere Zwickauer Strasse</name>
- <cmt>Äussere Zwickauer Strasse</cmt>
- <desc>Äussere Zwickauer Strasse</desc>
+ <name>geradeaus weiter auf Äussere Zwickauer Strasse</name>
+ <cmt>Äussere Zwickauer Strasse</cmt>
+ <desc>Äussere Zwickauer Strasse</desc>
</rtept>
<rtept lat="50.754700000" lon="12.626850000">
<name>in Lichtenstein/Sa. geradeaus weiter auf Innere Zwickauer Strasse</name>
<desc>B169 Kobaltstrasse</desc>
</rtept>
<rtept lat="50.546590000" lon="12.576330000">
- <name>in Hundshübel halb rechts halten auf B169 Hauptstrasse</name>
+ <name>in Hundshübel halb rechts halten auf B169 Hauptstrasse</name>
<cmt>B169 Hauptstrasse</cmt>
<desc>B169 Hauptstrasse</desc>
</rtept>
<rtept lat="50.533910000" lon="12.527210000">
- <name>in Stützengrün rechts abbiegen auf B169 Auerbacher Strasse</name>
+ <name>in Stützengrün rechts abbiegen auf B169 Auerbacher Strasse</name>
<cmt>B169 Auerbacher Strasse</cmt>
<desc>B169 Auerbacher Strasse</desc>
</rtept>
</rtept>
<rtept lat="50.508270000" lon="12.397900000">
<name>bei D 08209 Auerbach </name>
- <cmt>B169\Göltzschtalstrasse</cmt>
- <desc>B169\Göltzschtalstrasse</desc>
+ <cmt>B169\Göltzschtalstrasse</cmt>
+ <desc>B169\Göltzschtalstrasse</desc>
</rtept>
<rtept lat="50.502860000" lon="12.397930000">
- <name>in Auerbach/Vogtl. links abbiegen auf B169 Göltzschtalstrasse</name>
- <cmt>B169 Göltzschtalstrasse</cmt>
- <desc>B169 Göltzschtalstrasse</desc>
+ <name>in Auerbach/Vogtl. links abbiegen auf B169 Göltzschtalstrasse</name>
+ <cmt>B169 Göltzschtalstrasse</cmt>
+ <desc>B169 Göltzschtalstrasse</desc>
</rtept>
<rtept lat="50.489000000" lon="12.393790000">
<name>in Ellefeld links abbiegen auf Neuberg</name>
</rtept>
<rtept lat="50.479200000" lon="12.424870000">
<name>bei D 08209 Auerbach/Beerheide </name>
- <cmt>K7833\Rempesgrüner Strasse</cmt>
- <desc>K7833\Rempesgrüner Strasse</desc>
+ <cmt>K7833\Rempesgrüner Strasse</cmt>
+ <desc>K7833\Rempesgrüner Strasse</desc>
</rtept>
<rtept lat="50.478470000" lon="12.425460000">
<name>in Beerheide links abbiegen auf Strasse des Friedens (K7826)</name>
<desc>Strasse des Friedens (K7826)</desc>
</rtept>
<rtept lat="50.485670000" lon="12.433050000">
- <name>in Hohengrün rechts abbiegen auf Klingenthaler Strasse (S300)</name>
+ <name>in Hohengrün rechts abbiegen auf Klingenthaler Strasse (S300)</name>
<cmt>Klingenthaler Strasse (S300)</cmt>
<desc>Klingenthaler Strasse (S300)</desc>
</rtept>
<desc>Schallerbachstrasse (K7822)</desc>
</rtept>
<rtept lat="50.500210000" lon="12.435830000">
- <name>in Brunn rechts abbiegen auf Schönheider Strasse (S278)</name>
- <cmt>Schönheider Strasse (S278)</cmt>
- <desc>Schönheider Strasse (S278)</desc>
+ <name>in Brunn rechts abbiegen auf Schönheider Strasse (S278)</name>
+ <cmt>Schönheider Strasse (S278)</cmt>
+ <desc>Schönheider Strasse (S278)</desc>
</rtept>
<rtept lat="50.505090000" lon="12.522040000">
- <name>in Schönheide halb rechts halten auf Hauptstrasse (S278)</name>
+ <name>in Schönheide halb rechts halten auf Hauptstrasse (S278)</name>
<cmt>Hauptstrasse (S278)</cmt>
<desc>Hauptstrasse (S278)</desc>
</rtept>
<rtept lat="50.503030000" lon="12.533360000">
- <name>D 08304 Schönheide </name>
+ <name>D 08304 Schönheide </name>
<cmt>S278\Hauptstrasse</cmt>
<desc>S278\Hauptstrasse</desc>
</rtept>
<desc>Am Filz</desc>
</rtept>
<rtept lat="50.462790000" lon="12.490730000">
- <name>geradeaus weiter auf B283 Schönheider Strasse</name>
- <cmt>B283 Schönheider Strasse</cmt>
- <desc>B283 Schönheider Strasse</desc>
+ <name>geradeaus weiter auf B283 Schönheider Strasse</name>
+ <cmt>B283 Schönheider Strasse</cmt>
+ <desc>B283 Schönheider Strasse</desc>
</rtept>
<rtept lat="50.458250000" lon="12.488440000">
- <name>bei D 08262 Tannenbergsthal/Jägersgrün </name>
- <cmt>B283\Schönheider Strasse</cmt>
- <desc>B283\Schönheider Strasse</desc>
+ <name>bei D 08262 Tannenbergsthal/Jägersgrün </name>
+ <cmt>B283\Schönheider Strasse</cmt>
+ <desc>B283\Schönheider Strasse</desc>
</rtept>
<rtept lat="50.434530000" lon="12.461120000">
<name>bei D 08262 Tannenbergsthal </name>
<desc>Falkensteiner Strasse (S304)</desc>
</rtept>
<rtept lat="50.384530000" lon="12.456220000">
- <name>bei D 08248 Klingenthal/Brunndöbra </name>
+ <name>bei D 08248 Klingenthal/Brunndöbra </name>
<cmt>S304\Falkensteiner Strasse</cmt>
<desc>S304\Falkensteiner Strasse</desc>
</rtept>
<rtept lat="50.419640000" lon="12.399730000">
- <name>bei D 08223 Grünbach-Muldenberg </name>
+ <name>bei D 08223 Grünbach-Muldenberg </name>
<cmt>S302/S304</cmt>
<desc>S302/S304</desc>
</rtept>
<desc>S304</desc>
</rtept>
<rtept lat="50.446180000" lon="12.364590000">
- <name>bei D 08223 Grünbach </name>
+ <name>bei D 08223 Grünbach </name>
<cmt>S304\Bahnhofstrasse</cmt>
<desc>S304\Bahnhofstrasse</desc>
</rtept>
<rtept lat="50.449330000" lon="12.362170000">
- <name>in Grünbach links abbiegen auf Neustädter Strasse (K7835)</name>
- <cmt>Neustädter Strasse (K7835)</cmt>
- <desc>Neustädter Strasse (K7835)</desc>
+ <name>in Grünbach links abbiegen auf Neustädter Strasse (K7835)</name>
+ <cmt>Neustädter Strasse (K7835)</cmt>
+ <desc>Neustädter Strasse (K7835)</desc>
</rtept>
<rtept lat="50.449520000" lon="12.361460000">
- <name>links abbiegen auf Siehdichfürer Strasse (K7835)</name>
- <cmt>Siehdichfürer Strasse (K7835)</cmt>
- <desc>Siehdichfürer Strasse (K7835)</desc>
+ <name>links abbiegen auf Siehdichfürer Strasse (K7835)</name>
+ <cmt>Siehdichfürer Strasse (K7835)</cmt>
+ <desc>Siehdichfürer Strasse (K7835)</desc>
</rtept>
<rtept lat="50.442120000" lon="12.331960000">
- <name>in Neudorf links abbiegen auf Schönecker Strasse (S301)</name>
- <cmt>Schönecker Strasse (S301)</cmt>
- <desc>Schönecker Strasse (S301)</desc>
+ <name>in Neudorf links abbiegen auf Schönecker Strasse (S301)</name>
+ <cmt>Schönecker Strasse (S301)</cmt>
+ <desc>Schönecker Strasse (S301)</desc>
</rtept>
<rtept lat="50.438410000" lon="12.333160000">
- <name>links abbiegen auf Schönecker Strasse (S301)</name>
- <cmt>Schönecker Strasse (S301)</cmt>
- <desc>Schönecker Strasse (S301)</desc>
+ <name>links abbiegen auf Schönecker Strasse (S301)</name>
+ <cmt>Schönecker Strasse (S301)</cmt>
+ <desc>Schönecker Strasse (S301)</desc>
</rtept>
<rtept lat="50.400420000" lon="12.337200000">
- <name>bei D 08261 Schöneck </name>
+ <name>bei D 08261 Schöneck </name>
<cmt>S301</cmt>
<desc>S301</desc>
</rtept>
<rtept lat="50.396910000" lon="12.337530000">
- <name>in Schöneck/Vogtl. rechts abbiegen auf Falkensteiner Strasse (S301/S302)</name>
+ <name>in Schöneck/Vogtl. rechts abbiegen auf Falkensteiner Strasse (S301/S302)</name>
<cmt>Falkensteiner Strasse (S301/S302)</cmt>
<desc>Falkensteiner Strasse (S301/S302)</desc>
</rtept>
<name>einfahren in Kreisverkehr </name>
</rtept>
<rtept lat="50.389490000" lon="12.349660000">
- <name>2. Möglichkeit aus Kreisverkehr ausfahren auf Kärnerstrasse (S305)</name>
- <cmt>Kärnerstrasse (S305)</cmt>
- <desc>Kärnerstrasse (S305)</desc>
+ <name>2. Möglichkeit aus Kreisverkehr ausfahren auf Kärnerstrasse (S305)</name>
+ <cmt>Kärnerstrasse (S305)</cmt>
+ <desc>Kärnerstrasse (S305)</desc>
</rtept>
<rtept lat="50.343070000" lon="12.370580000">
<name>rechts abbiegen auf B283</name>
<desc>Am Bahnhof </desc>
</rtept>
<rtept lat="50.307980000" lon="12.302170000">
- <name>links abbiegen auf Strässler Berg</name>
- <cmt>Strässler Berg</cmt>
- <desc>Strässler Berg</desc>
+ <name>links abbiegen auf Strässler Berg</name>
+ <cmt>Strässler Berg</cmt>
+ <desc>Strässler Berg</desc>
</rtept>
<rtept lat="50.304230000" lon="12.298880000">
<name>geradeaus weiter auf Siebenbrunner Strasse</name>
<desc>Siebenbrunner Strasse</desc>
</rtept>
<rtept lat="50.298960000" lon="12.297280000">
- <name>in Strässel links abbiegen auf Böhmische Strasse (K7846)</name>
- <cmt>Böhmische Strasse (K7846)</cmt>
- <desc>Böhmische Strasse (K7846)</desc>
+ <name>in Strässel links abbiegen auf Böhmische Strasse (K7846)</name>
+ <cmt>Böhmische Strasse (K7846)</cmt>
+ <desc>Böhmische Strasse (K7846)</desc>
</rtept>
<rtept lat="50.284250000" lon="12.313970000">
- <name>in Schönlind rechts abbiegen auf Markneukirchner Strasse (K7843)</name>
+ <name>in Schönlind rechts abbiegen auf Markneukirchner Strasse (K7843)</name>
<cmt>Markneukirchner Strasse (K7843)</cmt>
<desc>Markneukirchner Strasse (K7843)</desc>
</rtept>
<rtept lat="50.284020000" lon="12.314200000">
- <name>links abbiegen auf Landwüster Strasse (K7846)</name>
- <cmt>Landwüster Strasse (K7846)</cmt>
- <desc>Landwüster Strasse (K7846)</desc>
+ <name>links abbiegen auf Landwüster Strasse (K7846)</name>
+ <cmt>Landwüster Strasse (K7846)</cmt>
+ <desc>Landwüster Strasse (K7846)</desc>
</rtept>
<rtept lat="50.271330000" lon="12.328640000">
- <name>in Landwüst halb rechts halten auf Schönlinder Strasse (K7844)</name>
- <cmt>Schönlinder Strasse (K7844)</cmt>
- <desc>Schönlinder Strasse (K7844)</desc>
+ <name>in Landwüst halb rechts halten auf Schönlinder Strasse (K7844)</name>
+ <cmt>Schönlinder Strasse (K7844)</cmt>
+ <desc>Schönlinder Strasse (K7844)</desc>
</rtept>
<rtept lat="50.271090000" lon="12.328480000">
<name>rechts abbiegen auf Rauner Strasse (K7844)</name>
<desc>Rauner Strasse (K7844)</desc>
</rtept>
<rtept lat="50.271540000" lon="12.321940000">
- <name>bei D 08258 Landwüst </name>
+ <name>bei D 08258 Landwüst </name>
<cmt>K7844\Rauner Strasse</cmt>
<desc>K7844\Rauner Strasse</desc>
</rtept>
<name>links abbiegen</name>
</rtept>
<rtept lat="50.399460000" lon="12.095840000">
- <name>in Bösenbrunn rechts abbiegen auf S310</name>
+ <name>in Bösenbrunn rechts abbiegen auf S310</name>
<cmt>S310</cmt>
<desc>S310</desc>
</rtept>
<desc>S310</desc>
</rtept>
<rtept lat="50.402190000" lon="12.064050000">
- <name>in Dröda rechts abbiegen auf Hauptstrasse/Bobenneukirchener Strasse (S310)</name>
+ <name>in Dröda rechts abbiegen auf Hauptstrasse/Bobenneukirchener Strasse (S310)</name>
<cmt>Hauptstrasse/Bobenneukirchener Strasse (S310)</cmt>
<desc>Hauptstrasse/Bobenneukirchener Strasse (S310)</desc>
</rtept>
<desc>Bobenneukirchener Strasse (S310)</desc>
</rtept>
<rtept lat="50.404490000" lon="12.063910000">
- <name>bei D 08538 Burgstein/Dröda </name>
+ <name>bei D 08538 Burgstein/Dröda </name>
<cmt>S310\Bobenneukirchener Strasse</cmt>
<desc>S310\Bobenneukirchener Strasse</desc>
</rtept>
<desc>B173 Hofer Strasse</desc>
</rtept>
<rtept lat="50.427520000" lon="12.070870000">
- <name>links abbiegen auf Zur Pirkmühle (K7859)</name>
- <cmt>Zur Pirkmühle (K7859)</cmt>
- <desc>Zur Pirkmühle (K7859)</desc>
+ <name>links abbiegen auf Zur Pirkmühle (K7859)</name>
+ <cmt>Zur Pirkmühle (K7859)</cmt>
+ <desc>Zur Pirkmühle (K7859)</desc>
</rtept>
<rtept lat="50.429200000" lon="12.061160000">
<name>bei D 08538 Burgstein/Pirk </name>
<name>links abbiegen</name>
</rtept>
<rtept lat="50.388740000" lon="11.996920000">
- <name>in Heinersgrün halb links halten auf An der Kapelle (K7855)</name>
+ <name>in Heinersgrün halb links halten auf An der Kapelle (K7855)</name>
<cmt>An der Kapelle (K7855)</cmt>
<desc>An der Kapelle (K7855)</desc>
</rtept>
route_flush(&my_track_head);
}
+void
+route_backup(unsigned int *count, queue **head_bak)
+{
+ queue *elem, *tmp, *elem2, *tmp2;
+ queue *qbackup;
+ route_head *rte_new;
+ unsigned int no;
+
+ no = route_count();
+
+ qbackup = xcalloc(1, sizeof(*qbackup));
+ QUEUE_INIT(qbackup);
+
+ QUEUE_MOVE(qbackup, &my_route_head);
+ QUEUE_INIT(&my_route_head);
+
+ rte_head_ct = 0;
+ rte_waypts = 0;
+
+ QUEUE_FOR_EACH(qbackup, elem, tmp)
+ {
+ route_head *rte_old = (route_head *)elem;
+
+ rte_new = route_head_alloc();
+ if (rte_old->rte_name != NULL)
+ rte_new->rte_name = xstrdup(rte_old->rte_name);
+ if (rte_old->rte_desc != NULL)
+ rte_new->rte_desc = xstrdup(rte_old->rte_desc);
+ if (rte_old->fs)
+ rte_new->fs = fs_chain_copy(rte_old->fs);
+
+ route_add_head(rte_new);
+ rte_new->rte_num = rte_old->rte_num;
+
+ QUEUE_FOR_EACH(&rte_old->waypoint_list, elem2, tmp2)
+ {
+ waypoint *wpt = waypt_dupe((waypoint *)elem2);
+ route_add_wpt(rte_new, wpt);
+ }
+ }
+ *head_bak = qbackup;
+ *count = no;
+}
+
+static void
+route_restore_hdr(const route_head *rte)
+{
+ rte_head_ct++;
+}
+
+static void
+track_restore_hdr(const route_head *trk)
+{
+ trk_head_ct++;
+}
+
+static void
+route_restore_tlr(const route_head *rte)
+{
+}
+
+static void
+route_restore_wpt(const waypoint *wpt)
+{
+ rte_waypts++;
+}
+
+void
+common_restore_finish(void)
+{
+ rte_head_ct = 0;
+ trk_head_ct = 0;
+ rte_waypts = 0;
+ route_disp_all(route_restore_hdr, route_restore_tlr, route_restore_wpt);
+ track_disp_all(track_restore_hdr, route_restore_tlr, route_restore_wpt);
+}
+
+void
+route_restore(unsigned int count, queue *head_bak)
+{
+ if (head_bak == NULL) return;
+
+ route_flush(&my_route_head);
+ QUEUE_INIT(&my_route_head);
+ QUEUE_MOVE(&my_route_head, head_bak);
+ xfree(head_bak);
+
+ common_restore_finish();
+}
+
+void
+track_backup(unsigned int *count, queue **head_bak)
+{
+ queue *elem, *tmp, *elem2, *tmp2;
+ queue *qbackup;
+ route_head *trk_new;
+ unsigned int no;
+
+ no = track_count();
+
+ qbackup = xcalloc(1, sizeof(*qbackup));
+ QUEUE_INIT(qbackup);
+
+ QUEUE_MOVE(qbackup, &my_track_head);
+ QUEUE_INIT(&my_track_head);
+
+ trk_head_ct = 0;
+
+ QUEUE_FOR_EACH(qbackup, elem, tmp)
+ {
+ route_head *trk_old = (route_head *)elem;
+
+ trk_new = route_head_alloc();
+ if (trk_old->rte_name != NULL)
+ trk_new->rte_name = xstrdup(trk_old->rte_name);
+ if (trk_old->rte_desc != NULL)
+ trk_new->rte_desc = xstrdup(trk_old->rte_desc);
+ if (trk_old->fs)
+ trk_new->fs = fs_chain_copy(trk_old->fs);
+
+ track_add_head(trk_new);
+ trk_new->rte_num = trk_old->rte_num;
+
+ QUEUE_FOR_EACH(&trk_old->waypoint_list, elem2, tmp2)
+ {
+ waypoint *wpt = waypt_dupe((waypoint *)elem2);
+ route_add_wpt(trk_new, wpt);
+ }
+ }
+ *head_bak = qbackup;
+ *count = no;
+}
+
+void
+track_restore(unsigned int count, queue *head_bak)
+{
+ if (head_bak == NULL) return;
+
+ route_flush(&my_track_head);
+ QUEUE_INIT(&my_track_head);
+ QUEUE_MOVE(&my_track_head, head_bak);
+ xfree(head_bak);
+
+ common_restore_finish();
+}
my_read,
NULL,
NULL,
- saroute_args
+ saroute_args,
+ CET_CHARSET_UTF8, 1 /* do nothing | CET-REVIEW */
};
my_read,
my_write,
NULL,
- NULL
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
tef_xml_read,
NULL,
NULL,
- tef_xml_args
+ tef_xml_args,
+ CET_CHARSET_UTF8, 1
};
compare $TMPDIR/s1 $TMPDIR/s2
}
-
+compare_gpx()
+{
+ sed -e '1d' $1 > $TMPDIR/comp_gpx1
+ sed -e '1d' $2 > $TMPDIR/comp_gpx2
+ compare $TMPDIR/comp_gpx1 $TMPDIR/comp_gpx2
+}
+
# Geocaching .loc
rm -f ${TMPDIR}/gl.loc
${PNAME} -i geo -f geocaching.loc -o geo -F ${TMPDIR}/gl.loc
#
# CoastalExplorer..
${PNAME} -r -i coastexp -f reference/coastexp.nob -o gpx -F ${TMPDIR}/coastexp.gpx
-compare ${TMPDIR}/coastexp.gpx reference/coastexp.ref
+compare_gpx ${TMPDIR}/coastexp.gpx reference/coastexp.ref
${PNAME} -r -i gpx -f ${TMPDIR}/coastexp.gpx -o coastexp -F ${TMPDIR}/coastexp.nob
compare ${TMPDIR}/coastexp.nob reference/coastexp.ref2
${PNAME} -w -i coastexp -f reference/coastexp.nob -o gpx -F ${TMPDIR}/coastexp.gpx
-compare ${TMPDIR}/coastexp.gpx reference/coastexp.ref3
+compare_gpx ${TMPDIR}/coastexp.gpx reference/coastexp.ref3
${PNAME} -w -i gpx -f ${TMPDIR}/coastexp.gpx -o coastexp -F ${TMPDIR}/coastexp.nob
compare ${TMPDIR}/coastexp.nob reference/coastexp.ref4
#
compare ${TMPDIR}/igc_sed.out reference/igc1_igc.out
${PNAME} -i igc -f ${TMPDIR}/igc.out -o gpx -F ${TMPDIR}/igc.gpx
-compare ${TMPDIR}/igc.gpx reference/igc1_gpx.out
+compare_gpx ${TMPDIR}/igc.gpx reference/igc1_gpx.out
${PNAME} -i gpx -f ${TMPDIR}/igc.gpx -o igc -F ${TMPDIR}/igc.out
sed '/^LXXXGenerated by GPSBabel Version/d' ${TMPDIR}/igc.out > ${TMPDIR}/igc_sed.out
${PNAME} -i igc -f reference/igc2.igc -o gpx -F ${TMPDIR}/igc.gpx
-compare ${TMPDIR}/igc.gpx reference/igc2_gpx.out
+compare_gpx ${TMPDIR}/igc.gpx reference/igc2_gpx.out
${PNAME} -i gpx -f ${TMPDIR}/igc.gpx -o igc -F ${TMPDIR}/igc.out
sed '/^LXXXGenerated by GPSBabel Version/d' ${TMPDIR}/igc.out > ${TMPDIR}/igc_sed.out
compare ${TMPDIR}/igc_sed.out reference/igc2_igc.out
${PNAME} -i igc -f ${TMPDIR}/igc.out -o gpx -F ${TMPDIR}/igc.gpx
-compare ${TMPDIR}/igc.gpx reference/igc2_gpx.out
+compare_gpx ${TMPDIR}/igc.gpx reference/igc2_gpx.out
#
# Google Maps XML test
#
rm -f ${TMPDIR}/tef_xml*
${PNAME} -r -i tef -f reference/route/tef_xml.sample.xml -o gpx -F ${TMPDIR}/tef_xml.sample.gpx
-compare reference/route/tef_xml.sample.gpx ${TMPDIR}/tef_xml.sample.gpx
+compare ${TMPDIR}/tef_xml.sample.gpx reference/route/tef_xml.sample.gpx
#
# PathAway Palm Database .pdb tests
compare ${TMPDIR}/pathaway-geo.loc reference/pathaway-geo.loc
rm -f ${TMPDIR}/pathaway*
${PNAME} -t -i pathaway -f reference/track/pathaway.pdb -o gpx -F ${TMPDIR}/pathaway.gpx
-compare ${TMPDIR}/pathaway.gpx reference/track/pathaway.gpx
+compare_gpx ${TMPDIR}/pathaway.gpx reference/track/pathaway.gpx
#
# Garmin GPS Database .gdb tests
# Because of Garmin coordinates storage gpx is not good for this test
# compare reference/gdb-sample.gpx ${TMPDIR}/gdb-sample.gpx
#
+# compare ${TMPDIR}/gdb-sample.gpx reference/gdb-sample.gpx
#
# Vito Navigator II .smt tests
#
rm -f ${TMPDIR}/vitosmt*
${PNAME} -i vitosmt -f reference/vitosmt.smt -o gpx -F ${TMPDIR}/vitosmt.gpx
-compare ${TMPDIR}/vitosmt.gpx reference/vitosmt.gpx
+compare_gpx ${TMPDIR}/vitosmt.gpx reference/vitosmt.gpx
${PNAME} -t -i vitosmt -f reference/vitosmt.smt -o gpx -F ${TMPDIR}/vitosmt_t.gpx
-compare ${TMPDIR}/vitosmt_t.gpx reference/track/vitosmt_t.gpx
+compare_gpx ${TMPDIR}/vitosmt_t.gpx reference/track/vitosmt_t.gpx
#
# tracks filter tests
rm -f ${TMPDIR}/trackfilter*
-${PNAME} -t -i gpx -f reference/track/trackfilter.gpx -x track,pack,split,title="LOG-%Y%m%d" -o gpx -F ${TMPDIR}/trackfilter-new.gpx
-grep -v "<time>" reference/track/trackfilter-new.gpx > ${TMPDIR}/trackfilter.ref
-grep -v "<time>" ${TMPDIR}/trackfilter-new.gpx > ${TMPDIR}/trackfilter.new
-compare ${TMPDIR}/trackfilter.ref ${TMPDIR}/trackfilter.new
+${PNAME} -t -i gpx -f reference/track/trackfilter.gpx -x track,pack,split,title="LOG-%Y%m%d" -o gpx -F ${TMPDIR}/trackfilter.gpx
+compare_gpx ${TMPDIR}/trackfilter.gpx reference/track/trackfilter.gpx
#
# Map&Guide Motorrad Routenplaner .bcr files test
#
rm -f ${TMPDIR}/bcr*
${PNAME} -r -i bcr -f reference/route/bcr-sample.bcr -o gpx -F ${TMPDIR}/bcr-sample.gpx
-compare reference/route/bcr-sample.gpx ${TMPDIR}/bcr-sample.gpx
+compare_gpx ${TMPDIR}/bcr-sample.gpx reference/route/bcr-sample.gpx
${PNAME} -r -i gpx -f reference/route/bcr-sample.gpx -o bcr -F ${TMPDIR}/bcr-sample2.bcr
compare reference/route/bcr-sample2.bcr ${TMPDIR}/bcr-sample2.bcr
${PNAME} -r -i bcr -f ${TMPDIR}/bcr-sample2.bcr -o gpx -F ${TMPDIR}/bcr-sample2.gpx
-compare reference/route/bcr-sample.gpx ${TMPDIR}/bcr-sample2.gpx
+compare_gpx reference/route/bcr-sample.gpx ${TMPDIR}/bcr-sample2.gpx
+
+#
+# cet - Character encoding transformation tests
+#
+rm -f ${TMPDIR}/cet-sample*
+${PNAME} -w -i gdb -f reference/cet/cet-sample.gdb -o gpx -F ${TMPDIR}/cet-sample.gpx
+compare ${TMPDIR}/cet-sample.gpx reference/cet/cet-sample.gpx
+${PNAME} -w -i gpx -f ${TMPDIR}/cet-sample.gpx -o tmpro -c Latin1 -F ${TMPDIR}/cet-sample.latin1.txt
+compare ${TMPDIR}/cet-sample.latin1.txt reference/cet/cet-sample.latin1.txt
+${PNAME} -w -i gdb -f reference/cet/cet-sample.gdb -o tmpro -c Latin2 -F ${TMPDIR}/cet-sample.latin2.txt
+compare ${TMPDIR}/cet-sample.latin2.txt reference/cet/cet-sample.latin2.txt
+${PNAME} -w -i gdb -f reference/cet/cet-sample.gdb -o tmpro -c cp1250 -F ${TMPDIR}/cet-sample.cp1250.txt
+compare ${TMPDIR}/cet-sample.cp1250.txt reference/cet/cet-sample.cp1250.txt
+${PNAME} -w -i gdb -f reference/cet/cet-sample.gdb -o tmpro -c macroman -F ${TMPDIR}/cet-sample.macroman.txt
+compare ${TMPDIR}/cet-sample.macroman.txt reference/cet/cet-sample.macroman.txt
#
# Garmin logbook. This format has an extra section (lap data with things
NULL,
data_write,
NULL,
- text_args
+ text_args,
+ CET_CHARSET_ASCII, 1 /* CET-REVIEW */
+
};
fprintf(file_out, "%f,%f:%s", lon, lat, pin);
if (!nolabels) {
+ char *temp = NULL;
char *desc = csv_stringclean(wpt->description, ":");
- char *adesc = str_utf8_to_ascii(desc);
if (global_opts.synthesize_shortnames)
- adesc = mkshort(mkshort_whandle, adesc);
- fprintf(file_out, ":%s", adesc);
+ {
+ temp = desc;
+ desc = mkshort(mkshort_whandle, desc);
+ }
+ fprintf(file_out, ":%s", desc);
+ if (temp != NULL) desc = temp;
xfree(desc);
- xfree(adesc);
}
fprintf(file_out, "\n");
}
data_write,
NULL,
tiger_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
wr_deinit,
data_read,
data_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
data_write,
NULL,
tomtom_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
tpg_wr_deinit,
tpg_read,
tpg_write,
- NULL
+ NULL,
+ NULL,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
return result;
}
-void utf8_to_int( const char *cp, int *bytes, int *value )
-{
- if ( (*cp & 0xe0) == 0xc0 ) {
- if ( (*(cp+1) & 0xc0) != 0x80 ) goto dodefault;
- *bytes = 2;
- *value = ((*cp & 0x1f) << 6) |
- (*(cp+1) & 0x3f);
- }
- else if ( (*cp & 0xf0) == 0xe0 ) {
- if ( (*(cp+1) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+2) & 0xc0) != 0x80 ) goto dodefault;
- *bytes = 3;
- *value = ((*cp & 0x0f) << 12) |
- ((*(cp+1) & 0x3f) << 6) |
- (*(cp+2) & 0x3f);
- }
- else if ( (*cp & 0xf8) == 0xf0 ) {
- if ( (*(cp+1) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+2) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+3) & 0xc0) != 0x80 ) goto dodefault;
- *bytes = 4;
- *value = ((*cp & 0x07) << 18) |
- ((*(cp+1) & 0x3f) << 12) |
- ((*(cp+2) & 0x3f) << 6) |
- (*(cp+3) & 0x3f);
- }
- else if ( (*cp & 0xfc) == 0xf8 ) {
- if ( (*(cp+1) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+2) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+3) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+4) & 0xc0) != 0x80 ) goto dodefault;
- *bytes = 5;
- *value = ((*cp & 0x03) << 24) |
- ((*(cp+1) & 0x3f) << 18) |
- ((*(cp+2) & 0x3f) << 12) |
- ((*(cp+3) & 0x3f) << 6) |
- (*(cp+4) & 0x3f);
- }
- else if ( (*cp & 0xfe) == 0xfc ) {
- if ( (*(cp+1) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+2) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+3) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+4) & 0xc0) != 0x80 ) goto dodefault;
- if ( (*(cp+5) & 0xc0) != 0x80 ) goto dodefault;
- *bytes = 6;
- *value = ((*cp & 0x01) << 30) |
- ((*(cp+1) & 0x3f) << 24) |
- ((*(cp+2) & 0x3f) << 18) |
- ((*(cp+3) & 0x3f) << 12) |
- ((*(cp+4) & 0x3f) << 6) |
- (*(cp+5) & 0x3f);
- }
- else {
-dodefault:
- *bytes = 1;
- *value = (unsigned char)*cp;
- }
-}
-
-char * str_utf8_to_cp1252( const char * str )
-{
- char *result = xstrdup( str );
- char *cur = result;
-
- while ( cur && *cur ) {
- if ( *cur & 0x80 ) {
- int bytes;
- int value;
- utf8_to_int( cur, &bytes, &value );
- if ( value > 0xff ) {
- switch (value) {
- case 0x20AC: value = 0x80; break;
- case 0x201A: value = 0x82; break;
- case 0x0192: value = 0x83; break;
- case 0x201E: value = 0x84; break;
- case 0x2026: value = 0x85; break;
- case 0x2020: value = 0x86; break;
- case 0x2021: value = 0x87; break;
- case 0x02C6: value = 0x88; break;
- case 0x2030: value = 0x89; break;
- case 0x0160: value = 0x8A; break;
- case 0x2039: value = 0x8B; break;
- case 0x0152: value = 0x8C; break;
- case 0x017D: value = 0x8E; break;
- case 0x2018: value = 0x91; break;
- case 0x2019: value = 0x92; break;
- case 0x201C: value = 0x93; break;
- case 0x201D: value = 0x94; break;
- case 0x2022: value = 0x95; break;
- case 0x2013: value = 0x96; break;
- case 0x2014: value = 0x97; break;
- case 0x02DC: value = 0x98; break;
- case 0x2122: value = 0x99; break;
- case 0x0161: value = 0x9A; break;
- case 0x203A: value = 0x9B; break;
- case 0x0153: value = 0x9C; break;
- case 0x017E: value = 0x9E; break;
- case 0x0178: value = 0x9F; break;
- /* default is the generic "currency */
- /* sign" because question marks */
- /* just look stupid. */
- default: value = 0xA4; break;
- }
- }
- *cur = (char)value;
- memmove(cur+1, cur+bytes, strlen(cur+bytes) + 1);
- }
- cur++;
- }
- return result;
-}
-
-#if 0
-/*
- * Convert to ISO 8859-1 (LATIN-1). The result is never longer than
- * the source.
- */
-char *
-str_utf8_to_8859_1( const char * str )
-{
- char *result = xstrdup( str );
- char *cur = result;
- unsigned char c;
-
- while (c = *str++) {
- if (c < 0x80) {
- *cur++ = c;
- continue;
- }
- if ((c & 0xFE) == 0xC2) {
- *cur++ = ((c & 0x03) << 6) | (*str++ & 0x3f);
- }
- }
-
- return result;
-}
-#endif
-
-char * str_utf8_to_ascii( const char * str )
-{
- char *result;
- char *cur;
-
- if (!str) return NULL;
-
- result = xstrdup( str );
- cur = result;
-
- while ( cur && *cur ) {
- if ( *cur & 0x80 ) {
- int bytes;
- int value;
- char *strvalue = NULL;
- utf8_to_int( cur, &bytes, &value );
- switch (value) {
- case 0x2026: strvalue = "..."; break;
- case 0x201c: value = '\"'; break;
- case 0x201d: value = '\"'; break;
- case 0xb4:
- case 0x2018: value = '`'; break;
- case 0x2019: value = '\''; break;
-
- case 0xf2:
- case 0xf3:
- case 0xf4:
- case 0xf5:
- case 0xf6: value = 'o'; break;
-
- case 0xe0:
- case 0xe1:
- case 0xe2:
- case 0xe3:
- case 0xe4:
- case 0xe5: value = 'a'; break;
-
- case 0xe8:
- case 0xe9:
- case 0xea:
- case 0xeb: value = 'e'; break;
-
- case 0xc0:
- case 0xc1:
- case 0xc2:
- case 0xc3:
- case 0xc4:
- case 0xc5: value = 'A'; break;
-
- case 0xf8: value = '0'; break;
- default: value='?'; break;;
- }
- if (strvalue) {
- memcpy(cur, strvalue, bytes);
- cur += bytes - 1;
- } else {
- *cur = (char)value;
- memmove(cur+1, cur+bytes, strlen(cur+bytes));
- }
- }
- cur++;
- }
- return result;
-}
-
-/*
- * str_iso8859_1_to_utf8
- *
- * converts the single byte charset ISO8859-1 (latin1) to UTF-8
- */
-
-char *
-str_iso8859_1_to_utf8(const char *s)
-{
- int len;
- char *res;
- unsigned char c;
- char *src, *dst;
-
- if (s == NULL) return NULL;
-
- len = 0;
- src = (char *)s;
- while ('\0' != (c = *src++))
- {
- len++;
- if (c & 0x80) len++;
- }
-
- src = (char *)s;
- dst = res = (void *) xmalloc(len + 1);
- while ('\0' != (c = *src++))
- {
- if (c & 0x80)
- {
- *dst++ = (0xc0 | (c >> 6));
- *dst++ = (c & 0xbf);
- }
- else
- {
- *dst++ = c;
- }
- }
- *dst = '\0';
- return res;
-}
-
/*
* Get rid of potentially nasty HTML that would influence another record
* that includes;
/* figure the same for other than standard entities (i.e. anything
* that isn't in the range U+0000 to U+007F */
+
+#if 0
for ( cp = str; *cp; cp++ ) {
if ( *cp & 0x80 ) {
-
- utf8_to_int( cp, &bytes, &value );
+ cet_utf8_to_ucs4( cp, &bytes, &value );
cp += bytes-1;
elen += sprintf( tmpsub, "&#x%x;", value ) - bytes;
nsecount++;
}
}
+#endif
/* enough space for the whole string plus entity replacements, if any */
tmp = xcalloc((strlen(str) + elen + 1), 1);
p = tmp;
while (*p) {
if ( *p & 0x80 ) {
- utf8_to_int( p, &bytes, &value );
+ cet_utf8_to_ucs4( p, &bytes, &value );
if ( p[bytes] ) {
xstr = xstrdup( p + bytes );
}
NULL,
data_write,
NULL,
- vcf_args
+ vcf_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
vitosmt_read,
vitosmt_write,
NULL,
- NULL
+ NULL,
+ CET_CHARSET_UTF8, 1 /* do nothing | CET-REVIEW */
};
#include <stdio.h>
#include "defs.h"
+#include "cet_util.h"
queue waypt_head;
static unsigned int waypt_ct;
printposn(wpt->longitude,0);
if ( wpt->description ) {
- tmpdesc = str_utf8_to_ascii( wpt->description);
+ tmpdesc = xstrdup( wpt->description);
printf("%s/%s",
global_opts.synthesize_shortnames ?
mkshort(mkshort_handle, tmpdesc) :
}
waypt_flush(&waypt_head);
}
+
+void
+waypt_backup(unsigned int *count, queue **head_bak)
+{
+ queue *elem, *tmp, *qbackup;
+ waypoint *wpt;
+ int no;
+
+ qbackup = (queue *) xcalloc(1, sizeof(*qbackup));
+ QUEUE_INIT(qbackup);
+
+ QUEUE_MOVE(qbackup, &waypt_head);
+ QUEUE_INIT(&waypt_head);
+
+ waypt_ct = 0;
+
+ QUEUE_FOR_EACH(qbackup, elem, tmp)
+ {
+ wpt = (waypoint *)elem;
+ waypt_add(waypt_dupe(wpt));
+ }
+
+ *head_bak = qbackup;
+ *count = no;
+}
+
+void
+waypt_restore(unsigned int count, queue *head_bak)
+{
+ if (head_bak == NULL) return;
+
+ waypt_flush(&waypt_head);
+ QUEUE_INIT(&waypt_head);
+ QUEUE_MOVE(&waypt_head, head_bak);
+ waypt_ct = count;
+ xfree(head_bak);
+}
xcsv_data_read,
xcsv_data_write,
NULL,
- xcsv_args
+ xcsv_args,
+ CET_CHARSET_ASCII, 0 /* CET-REVIEW */
};
#include "defs.h"
#include "xmlgeneric.h"
+#include "cet_util.h"
#ifndef NO_EXPAT
#include <expat.h>
void
write_xml_header(FILE *ofd)
{
- fprintf(ofd, "<?xml version=\"1.0\"?>\n");
+ char buff[128];
+ cet_cs_vec_t *cs = cet_find_cs_by_name(CET_CHARSET_ASCII);
+
+ if ((global_opts.charset != NULL) && (global_opts.charset != cs))
+ snprintf(buff, sizeof(buff), " encoding=\"%s\"", global_opts.charset_name);
+ else
+ buff[0] = 0;
+ fprintf(ofd, "<?xml version=\"1.0\"%s?>\n", buff);
}
void
xg_tag_tbl = tbl;
+ XML_SetUnknownEncodingHandler(psr, cet_lib_expat_UnknownEncodingHandler, NULL);
XML_SetElementHandler(psr, xml_start, xml_end);
XML_SetCharacterDataHandler(psr, xml_cdata);
}